【发布时间】:2012-09-10 21:28:13
【问题描述】:
假设我有一个字符串:
x <- "This is a string (Yay, string!)"
我想解析字符串并返回“Yay, string!”
我该怎么做?
我尝试了一堆 grep/grepl/gsub/sub/etc,但找不到正确的正则表达式或参数组合。叹。我需要学习正则表达式技能。
【问题讨论】:
-
绝对是骗子,但答案似乎不同。
-
gsubfn 包中的
strapplyc处理这样的问题。以下代码中的正则表达式匹配(后跟任意数量的不是)的字符并返回括号内的部分:library(gsubfn); strapplyc(x, "\\(([^)]*)", simplify = TRUE)默认情况下它使用非常快的 tcl 正则表达式,例如查看?strapplyc中的示例,以了解在几秒钟内解析詹姆斯·乔伊斯的《尤利西斯》整个文本的示例。关于学习正则表达式,gsubfn主页gsubfn.googlecode.com有正则表达式资源链接。
标签: r