首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Perl regex匹配:只匹配单个单词的字符串,如何使用反向查找

Perl regex匹配:只匹配单个单词的字符串,如何使用反向查找
EN

Stack Overflow用户
提问于 2016-09-02 02:05:49
回答 1查看 95关注 0票数 1

我真的很累了,想让这个大政方针发挥作用。我在sas中使用perl regex。如果有人能帮我,我会非常感激的。我有三个问题,请考虑以下几行文本(行号仅供参考):

代码语言:javascript
复制
1 weight
2 weightchange
3 weight change
4 weight percentile
5 change weight
6 percentile weight
7 **** weight pre op
8 water weight
9 weight percentile
10 myocardial infarction
  1. 如何使用regex来匹配1而不是2-9?(这是一种将开头和结尾同时匹配起来的方法吗?)
  2. 如何使用regex和负查找/查找后断言来匹配1,然后显式排除2-6
  3. 如何修改适合于解决Q2的正则表达式,从而排除78

额外的问题:你花了多长时间才能熟练地使用regex?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-02 02:48:28

@Barmar已经提到了这一点:^weight$可以做你要求的事情。你确定那是你想要的吗,比如“体重”本身?

2)你可以做一些像/(?<!percentile )(?<!change )weight(?! ?change| percentile)/这样的事情。负查找不能写为(?<!change |percentile ),因为RE引擎不支持可变宽度查找,但是由于匹配为零宽度,所以可以单独列出它们。不过,所有这些看起来都非常具体。它将失败,例如,如果你的文本包含这些单词,用一个断线隔开。

3)只需为****water添加另一个负面的外观。

我不太擅长regex :)而且我从来没有坐下来,决定学习来龙去脉,如果你没有用例的话,那就太没用了;你很快就会忘记它。现在我已经使用regexen超过20年了,我仍然在学习新的东西,比如几周前如何匹配Unicode属性。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39283304

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档