首页 > 解决方案 > R:基于表格连接文本中的两个单词

问题描述

在 RI 中存在以下问题:

在文本中,我想将一些具有特定含义的单词(从两个到三个)组合在一起。c("a b", "cd e")

在文本中,每当这两个词出现在给定文本中时,我希望拥有相同的文本,但是当这两个词一起出现时,它们用“_”绑定。

示例:这是一个“a”“b”和它的美丽。“cd e”更贵。

会变成:这是一个“a”_b”,它很漂亮。“c_d_e”更贵。

谢谢

标签: rnlp

解决方案


正则表达式可能是您的解决方案。尝试以下操作:

library(stringr)
text <-  "This is an \"a b\" and its beautiful. \"c d e\" are more expensive."

str_replace(string = text, pattern = "(?<=a)[:blank:](?=b)", replacement = "_")
[1] "This is an \"a_b\" and its beautiful. \"c d e\" are more expensive."

"(?<=a):blank:" 此模式匹配所有以 "a" 开头并后跟 "b" 的空格。

然后你可以自己弄清楚如何匹配“c d”等等;)

更多信息请访问:https ://stringr.tidyverse.org/

祝你好运,L


推荐阅读