繁体   English   中英

正则表达式 Python 在某个单词后添加字符

[英]Regex Python adding characters after a certain word

我有一个文本文件,每次出现“get”这个词时,我都需要在它后面插入一个@符号。

在 Python 中,如何使用正则表达式在特定单词后添加字符? 现在我正在逐字解析行,但我对正则表达式的了解不足以编写代码。

使用re.sub()提供替换,使用反向引用重新使用匹配的文本:

import re

text = re.sub(r'(get)', r'\1@', text)

(..)括号标记一个组, \\1在指定替换时引用该组。 所以getget@取代。

演示:

>>> import re
>>> text = 'Do you get it yet?'
>>> re.sub(r'(get)', r'\1@', text)
'Do you get@ it yet?'

该模式将匹配get字符串中的任何地方; 如果您需要将其限制为整个单词,请添加\\b锚点:

text = re.sub(r'(\bget\b)', r'\1@', text)

暂无
暂无

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

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