基于双字符定界符的R拆分字符串

时间:2019-10-17 21:56:29

标签: r

我有一个字符串"Test||Test1||test2",我想用||进行标记。但是,我得到的总是单个字符(两端都有2个空字符):

"" "T" "e" "s" "t" "1" "|" "|" "T" "e" "s" "t" "2" "|" "|" "T" "e" "s" "t" "3" ""

我已经尝试了两个:strsplit(myString, "||")str_split(myString, "||"),来自库tidyverse(从这个tutorial开始,似乎应该可以工作),但是得到了同样的错误结果。

如何基于双/多字符定界符来标记字符串?

1 个答案:

答案 0 :(得分:1)

我们可以用fixed换行,因为|OR的元字符

library(stringr)
str_split(myString, fixed("||"))[[1]]
#[1] "Test"  "Test1" "test2"

或者另一个选择是转义(\\-如评论中的@joran)或将其放在方括号内

数据

myString <- "Test||Test1||test2"