我想编写一个str拆分命令,获取第一个")“并拆分字符串。
例如:
f("12)34)56")
"12" "34)56"我已经阅读过其他几个相关的问题,但恐怕我无法理解这一点。谢谢你的帮助。
发布于 2014-10-08 00:35:31
如果您使用strsplit获得第一次匹配,然后使用regmatches的倒排结果,则可以获得与regexpr相同的列表类型结果。
x <- "12)34)56"
regmatches(x, regexpr(")", x), invert = TRUE)
# [[1]]
# [1] "12" "34)56"发布于 2014-10-07 22:16:55
需要速度吗?然后进行stringi函数。参见时间,例如,here。
library(stringi)
x <- "12)34)56"
stri_split_fixed(str = x, pattern = ")", n = 2)发布于 2014-10-08 00:21:43
可能更安全的做法是识别字符所在的位置,然后再将其两侧的子字符串:
x <- "12)34)56"
spl <- regexpr(")",x)
substring(x,c(1,spl+1),c(spl-1,nchar(x)))
#[1] "12" "34)56"https://stackoverflow.com/questions/26246095
复制相似问题