[英]how can i get right result at the seperator of “|”?
我想分割一個字符串。
str <- "3 |6 | 9 | 12"
unlist(strsplit(str,split="|"))
[1] "3" " " "|" "6" " " "|" " " "9" " " "|" " " "1" "2"
如何獲得結果“ 3 6 9 12”?
我實際上會放棄strsplit
而只使用scan
的東西。
> str <- "3 |6 | 9 | 12"
> str
[1] "3 |6 | 9 | 12"
> scan(text = str, sep = "|")
Read 4 items
[1] 3 6 9 12
如果您想要一個包含所有四個子字符串的向量,則可以使用:
str <- "3 |6 | 9 | 12"
strsplit(str, " *\\| *")[[1]]
# [1] "3" "6" "9" "12"
在這里, " *"
表示任意數量的空格 。
需要注意的是|
表示或以正則表達式表示。 您必須使用雙轉義符進行文字解釋,即\\\\|
。
使用gsub
替換'|' 通過“空”。 (使用“ fixed = TRUE”,因此“ |”是要按原樣匹配的字符串,而不是正則表達式中使用的“ |”)
str <- "3 |6 | 9 | 12"
> gsub("|", "", str, fixed = TRUE)
[1] "3 6 9 12"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.