我怎样才能在R中实现这一点呢?
str_split("U.S. (California, San Luis Obispo County)",pattern=' (')
gregexpr中的错误(“(”),“美国(加州,圣路易斯奥比斯波县)”,fixed = FALSE,:无效正则表达式'(',原因‘缺失')''
gregexpr("(", "U.S. (California, San Luis Obispo County)")
gregexpr中的错误(“(”,“美国(加利福尼亚,圣路易斯奥比斯波县)”):无效正则表达式'(',原因‘缺失')''
gregexpr("(", "U.S. (California, San Luis Obispo County)",perl=T)
gregexpr中的错误(“(”,“美国(加利福尼亚,圣路易斯奥比斯波县)”,perl = T):无效正则表达式'('‘)
此外,警告信息:
In gregexpr("(", "U.S. (California, San Luis Obispo County)", perl = T) :
PCRE pattern compilation error
'missing )'
at ''
发布于 2014-06-04 08:27:39
使用像“(”)这样的特殊字符进行拆分(“您必须转义它。要在R中转义正则表达式,必须使用双"\",一个用于R字符串,另一个用于正则表达式,如Hugh所建议的。那么你的模式应该是“()”。有关更多信息,请参见regex医生。
下面的代码执行此任务
raw_string <- "U.S. (California, San Luis Obispo County)"
splitted_string <- strsplit(x=raw_string, split="\\(")
splitted_string
#[[1]]
#[1] "U.S. "
#[2] "California, San Luis Obispo County)"
但我不确定这就是你想要的。如果您的目标是删除字符串中的左侧括号,请使用带有空替换模式的gsub
。
raw_string <- "U.S. (California, San Luis Obispo County)"
no_parenthesis_string <- gsub(pattern="\\(", replacement="", x= raw_string)
no_parenthesis_string
# [1] "U.S. California, San Luis Obispo County)"
有用吗?
发布于 2015-11-12 08:50:59
gsub("\\\\(","",c("U.S. (California, San Luis Obispo County)"))
或
paste0(strsplit(c("U.S. (California, San Luis Obispo County)"), "\\(")[[1]], collapse = "")
答:“美国加州圣路易斯奥比斯波县”
https://stackoverflow.com/questions/24029956
复制相似问题