2024-04-19 08:14:54 发布
网友
我有一个脚本,我需要替换一些字符,可能会产生一些麻烦与其他字符。在
我想优化所需的操作数量:
# Replace % at end of string find_char = re.match( r'.+\%[a-zA-Z0-9]+', line) if find_char: line=re.sub(r'\%','PCT',line)
这里我想替换%,但只有当它出现在字符串的末尾时,我才能用re.sub在一个单独的操作中完成这个操作吗?在
%
re.sub
find_char = re.match( r'.+\%[a-zA-Z0-9]+', line) if find_char: line=re.sub(r'\%$','PCT',line)
使用$匹配末尾的字符
当然,只需使用$指定匹配应该在字符串的末尾:
$
>>> import re >>> re.sub("%$", "o", "fo%") 'foo' >>> re.sub("%$", "o", "f%o") 'f%o'
我想你是认真的。它将字符串末尾的%符号替换为PCT
PCT
>>> import re >>> m = re.sub(r'(?<=\S)%(?= |$)', r'PCT', 'foo%bar foo% bar%') >>> m 'foo%bar fooPCT barPCT'
如果您想替换一个%符号,它前面有一个空格,后面跟着一个空格,那么试试这个方法
或者
>>> import regex >>> m = regex.sub(r'(?<=^|[\S\s])%(?= |$)', r'PCT', '% foo%bar % foo% bar%') >>> m 'PCT foo%bar PCT fooPCT barPCT'
使用$匹配末尾的字符
当然,只需使用
$
指定匹配应该在字符串的末尾:我想你是认真的。它将字符串末尾的
%
符号替换为PCT
如果您想替换一个
^{pr2}$%
符号,它前面有一个空格,后面跟着一个空格,那么试试这个方法或者
相关问题 更多 >
编程相关推荐