正则表达式,不包括R中的单词

Duy Bui

我真的不知道如何在R中使用不匹配的正则表达式正确地找到单词

例如:数据包括:

x =  c("hail", "small hail", "wind hail",  "deep hail",  "thunderstorm hail", "tstm wind hail", "gusty wind hail", "late season hail", "non severe hail", "marine hail")

我想查找所有具有“雹”但没有“海洋”的Obs

我的尝试:

x[grep("[^(marine)] hail", x)]

->我只有5个:

"small hail"      "wind hail"       "deep hail"       "tstm wind hail"  "gusty wind hail"

我不知道其他4个会发生什么

阿维纳什·拉吉(Avinash Raj)

使用环视断言。

> x =  c("hail", "small hail", "wind hail",  "deep hail",  "thunderstorm hail", "tstm wind hail", "gusty wind hail", "late season hail", "non severe hail", "marine hail")
> x[grep("^(?=.*hail)(?!.*marine)", x, perl=TRUE)]
[1] "hail"              "small hail"        "wind hail"        
[4] "deep hail"         "thunderstorm hail" "tstm wind hail"   
[7] "gusty wind hail"   "late season hail"  "non severe hail" 

要么

\b如有必要,添加边界。\b单词字符和非单词字符之间的匹配。

> x[grep("^(?=.*\\bhail\\b)(?!.*\\bmarine\\b)", x, perl=TRUE)]
  • ^ 断言我们处于起步阶段。

  • (?=.*hail) 断言匹配必须包含字符串的正向超前 hail

  • (?!.*marine)断言匹配不包含字符串的否定的超前行为marine

  • 因此,仅当两个条件都满足时,上述正则表达式才匹配起始锚点或行的起点。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

正则表达式从出现的单词中查找内容,并且在字符之前不包括该单词

如何在正则表达式中匹配字符串,但不包括JS中的单词字符?

正则表达式匹配字符串中的特定单词,但不包括索引版本

匹配冒号之间的正则表达式单词(不包括冒号)

正则表达式:匹配行尾的单词但不包括 X

正则表达式:如何用空格/连字符(不包括数字)捕获单词?

月和年的正则表达式,不包括某些单词

正则表达式-不包括字符

要匹配的正则表达式模式,不包括... /

正则表达式,不包括“-”标签

正则表达式不包括右括号

正则表达式不包括方括号

正则表达式->替换最多但不包括

正则表达式编号,不包括0

正则表达式,用于查找字符串中的每个单词(不包括定界符之间的单词)

Java正则表达式查找但不包括在组中

匹配正则表达式中不包括关键字的短语

段落中的Javascript正则表达式匹配字符串不包括网址

使用正则表达式组合R中的单词

使用正则表达式将句子拆分为标记,从而去除所有必要的标点符号(不包括单词中的标点符号)

如何使用正则表达式和 Julia 计算一个句子中的所有单词,不包括所有形式的空格

\ b正则表达式包括句点作为单词

在正则表达式中查找整个单词包括 C# 中的 url

正则表达式以匹配一个单词,该单词被单词边界包围,其中不包括正斜杠

正则表达式替换文本中的连字符,不包括 url、标签和邮件

匹配单词正则表达式列表中的单词

R中的正则表达式匹配仅包含非单词字符的单词

凌乱的字符串。到底正则表达式不包括“@”字符

需要正则表达式来捕获IP(不包括环回)