繁体   English   中英

在python中使用re.sub()如何替换某个短语但前提是它前面有多个字母

[英]Using re.sub() in python how to replace certain phrase but only if there is more than one letter ahead of it

例如文本看起来像

sentence = "blah blah blah jnfskjndflah"

并且我只想用 python 上的 re.sub() 替换“lah”,仅当它前面有一个以上的字母时

因此,只需将其替换为“jnfskjndflah”,而不是“blah”(如果有意义的话)并且句子看起来像“blah blah blah jnfskjndf”。

我把它当作s = re.sub("[*az]lah", "", sentence)但结果是“blah blah blah jnfskjnd”(错过了 f)

任何帮助表示赞赏!

例如,您可以正面断言 2 个字符 az

(?<=[a-z]{2})lah

正则表达式演示| Python 演示

import re

sentence = "blah blah blah jnfskjndflah"
s = re.sub("(?<=[a-z]{2})lah", "", sentence)
print(s)

输出

blah blah blah jnfskjndf

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM