如何提取范围内的文本?

时间:2019-03-01 07:38:30

标签: r regex

例如,我有

Text=‘ Text1. Text2(Gino).Text(Ant)text. Text4. Text(Fi).’

所需的输出:

Text=‘Text2(Gino). Text(Ant)text. Text(Fi)’

2 个答案:

答案 0 :(得分:1)

您似乎只希望文本中带有括号的部分,并且这些部分由点分隔。

尝试此正则表达式:

\w+\(\w+\)\w*\.\s*

找到所有匹配项并加入所有匹配项将产生您想要的字符串。

说明:

regex匹配一些单词字符(\w+),后跟一个开放括号\(,再匹配一些单词字符(\w+),再跟一个封闭括号\),并可以选择后面跟一些其他文字字符(\w*)。之后,它会寻找一个点和可选的空白字符。

答案 1 :(得分:0)

不确定这是您要找的东西吗

Text <- "Text1. Text2(Gino).Text(Ant)text. Text4. Text(Fi)."
Text <- gsub("Text1. ", "", Text, fixed=TRUE)
Text <- gsub("Text4. ", "", Text, fixed=TRUE)
Text
[1] "Text2(Gino).Text(Ant)text. Text(Fi)."

如果要使用正则表达式,请将fixed=TRUE更改为fixed=FALSE