在包含“.”的特定字符串上使用 str_split()在 R

Using str_split() on a specific string containing a "." in R

我试图在找到一组特定字符时将字符串拆分为多个位。在这个例子中“abc.”

这是我的代码

test <- "aa\abc.def/def\abd.abd...abc.def"
result <- str_split(test,"abc\.")

所以这里我的预期输出是

"aa\" "def/def\abd.abd..." "def"

我得到的输出是:

"aa\abc.def/def\abd.abd..." "def"  

所以它似乎在最后有效,但在第一个无效。我认为这可能是因为 "" 但对我来说仍然有点奇怪,该函数不会考虑 ""

的潜在存在

欢迎任何帮助。

您遇到的问题是字符串本身,而不是拆分函数。您应该在字符串中使用 "\" 而不是 "\"

test = "aa\abc.def/def\abd.abd...abc.def"

cat(test)
# aa\abc.def/def\abd.abd...abc.def

result = str_split(test,"abc\.")
result 

# [[1]]
# [1] "aa\" "def/def\abd.abd..." "def"