regex - “gsub”如何处理空格?

标签 regex r

我有一个字符串"ab b cde",即"ab[space]b[space]cde"。我想用空格替换“space-b”和“space-c”,以便输出字符串为"ab[space][space][space][space]de"。我无法弄清楚如何删除第二个“b”而不删除第一个“b”。我试过了:

gsub("[\\sb,\\sc]", " ", "ab b cde", perl=T)

但这给了我"a[spaces]de"。有指针吗?谢谢。

编辑:考虑一个更复杂的问题:我想通过删除"akui i ii""akui[space]i[space]ii"将字符串"akui[spaces|""space-i"转换为"space-ii"

最佳答案

您可以像这样使用lookbehind matching:

gsub("(?<=\\s)i+", " ", "akui i ii", perl=T)
编辑:
回头看仍然是要走的路,并用原始帖子中的另一个示例进行了演示。希望这可以帮助。

关于regex - “gsub”如何处理空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9274640/

相关文章:

regex - R:如何查找字符串中的第一个数字

c# - 使用 crlf 行定界符读取大文本文件的最佳方法

R data.table 在组内进行子集并将数据表拆分为两个

regex - 为什么 strsplit 返回一个列表

r - 使用 ggplot2 分割 fiddle 图

r - 如何从R中的selectInput函数一次选择所有输入

R 中的 rbind 给出了一个奇怪的行名

python - 识别文本中的句子

asp.net - URL 中的波浪线

php - 优化远程页面检索和解析