R 如何提取范围内的文本?

R 如何提取范围内的文本?,r,regex,R,Regex,例如,我有: Text=‘ Text1. Text2(Gino).Text(Ant)text. Text4. Text(Fi).’ 期望输出: Text=‘Text2(Gino). Text(Ant)text. Text(Fi)’ 不确定这是否是您想要的: Text <- "Text1. Text2(Gino).Text(Ant)text. Text4. Text(Fi)." Text <- gsub("Text1. ", "", Text, fixed=TRUE) Text &

例如,我有:

Text=‘ Text1. Text2(Gino).Text(Ant)text. Text4. Text(Fi).’
期望输出:

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

不确定这是否是您想要的:

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)."

Text您似乎只需要文本中带有括号的部分,这些部分由点分隔

试试这个正则表达式:

\w+\(\w+\)\w*\.\s*
找到所有匹配项并加入所有匹配项将产生您想要的字符串

说明:


正则表达式匹配一些单词字符(
\w+/code>),后跟一个开括号
\(
和一些其他单词字符(
\w+/code>),后跟一个右括号
\)
,还可以选择后跟一些其他单词字符(
\w*
)。之后,它将查找一个点和可选的空白字符。

模式是什么?请解释此替换背后的逻辑。我不清楚。您可以使用str_extract form stringr package或gsub来实现此目的。它将满足您的所有要求。参考:这假设OP希望明确删除文本
Text1。
,我对此表示怀疑。我建议对该问题进行编辑,以明确引用regex以与标记保持一致。可能需要使用双斜杠进行转义(虽然不确定),但在R中似乎是这样。