首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >删除r中str_split中的左手括号

删除r中str_split中的左手括号
EN

Stack Overflow用户
提问于 2014-06-04 05:50:21
回答 2查看 4.4K关注 0票数 1

我怎样才能在R中实现这一点呢?

代码语言:javascript
运行
复制
str_split("U.S. (California, San Luis Obispo County)",pattern=' (')

gregexpr中的错误(“(”),“美国(加州,圣路易斯奥比斯波县)”,fixed = FALSE,:无效正则表达式'(',原因‘缺失')''

代码语言:javascript
运行
复制
gregexpr("(", "U.S. (California, San Luis Obispo County)")

gregexpr中的错误(“(”,“美国(加利福尼亚,圣路易斯奥比斯波县)”):无效正则表达式'(',原因‘缺失')''

代码语言:javascript
运行
复制
gregexpr("(", "U.S. (California, San Luis Obispo County)",perl=T)

gregexpr中的错误(“(”,“美国(加利福尼亚,圣路易斯奥比斯波县)”,perl = T):无效正则表达式'('‘)

此外,警告信息:

代码语言:javascript
运行
复制
In gregexpr("(", "U.S. (California, San Luis Obispo County)", perl = T) :
  PCRE pattern compilation error
    'missing )'
    at ''
EN

回答 2

Stack Overflow用户

发布于 2014-06-04 08:27:39

使用像“(”)这样的特殊字符进行拆分(“您必须转义它。要在R中转义正则表达式,必须使用双"\",一个用于R字符串,另一个用于正则表达式,如Hugh所建议的。那么你的模式应该是“()”。有关更多信息,请参见regex医生

下面的代码执行此任务

代码语言:javascript
运行
复制
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

代码语言:javascript
运行
复制
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)"

有用吗?

票数 2
EN

Stack Overflow用户

发布于 2015-11-12 08:50:59

代码语言:javascript
运行
复制
gsub("\\\\(","",c("U.S. (California, San Luis Obispo County)"))

代码语言:javascript
运行
复制
paste0(strsplit(c("U.S. (California, San Luis Obispo County)"), "\\(")[[1]], collapse = "")

答:“美国加州圣路易斯奥比斯波县”

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24029956

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档