首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >正则表达式lookaround从行首开始就不匹配。Python

正则表达式lookaround从行首开始就不匹配。Python
EN

Stack Overflow用户
提问于 2019-08-03 12:15:36
回答 1查看 56关注 0票数 -1

我正在解析一个食谱的配料文本,有时会有“1罐(21盎司)豆子”这样的东西。

首先,我在一行中寻找数字,然后-查看每个确切的数字,找出它的度量。

一切都很好,直到数字结尾相似-例如,这里是1罐21盎司,我之前的lookaround

代码语言:javascript
复制
(?<=1)[ ]*[a-zA-Z]*

查找“1”的两个单词:“can”和“oz”。

但我需要找到纯'1‘后面的每个单词,而不是'21’。对于这种情况,它只能找到'can‘(没有'oz'),我尝试删除前面有数字的所有内容:

代码语言:javascript
复制
(?<=[^\d]1)[ ]*[a-zA-Z]*

如果1can不在行的开头,它就可以正常工作……例如,在这两行中:

1罐(21盎司)#不匹配任何东西

21盎司(1罐)#匹配的‘罐’

如果我在第一行(在‘1can’之前)添加一个空格,它也可以正常工作……所以一开始就有些奇怪的事情。

诀窍是什么?

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

https://stackoverflow.com/questions/57335418

复制
相关文章

相似问题

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