繁体   English   中英

正则表达式匹配确切的单词

[英]Regex expression to match exact word

我有一个包含几个字符串的文件,我只想更改一个特定的表达式。 FE,假设文件如下所示:

version1: master, version2: master, version3: first-master

我希望能够将字符串替换为如下内容:

version1: foo, version2: foo, version3: first-master

提前致谢:)

根据您需要做的事情,您可以使用look-behing & look-ahead。

例如正则表达式(?<=version\d: )\w+(?=,)

  • (?<=version\d: ) :出现必须在versionx:其中x是(单个)数字
  • \w+ :出现必须由组\w中的字符组成(即单词字符)
  • , : 出现必须后跟逗号

这是一个用foo替换master的示例。

import re

string = "version1: master, version2: master, version3: first-master"

p = re.compile(r"(?<=version\d: )\w+(?=,)")
p.sub(r"foo", string)
# "version1: foo, version2: foo, version3: first-master"

暂无
暂无

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

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