2024-10-04 03:15:51 发布
网友
在python中
使用re.sub,如何用新字符串替换子字符串?
re.sub
从
number = "20" s = "hello number 10, Agosto 19"
到
s = "hello number 20, Agosto 19"
我试过了
re.sub(r'number ([0-9]*)', number, s)
数字10就是一个例子,字符串中的数字可以是任何数字。
10
如果您不知道这个数字,但知道它后面跟着一个,
,
import re re.sub("\d+(?=,)","20",s) # one or more digits followed by a , hello number 20, Agosto 19 import re re.sub("(\d+)","20",s,1) # first occurrence hello number 20, Agosto 19
对于这种简单的情况,不要使用regex。正常的string manipulation就足够了(而且很快):
s = "hello number 10, Agosto 19" s = s.replace('10', '20')
你是说这个?
>>> import re >>> m = re.sub(r'10', r'20', "hello number 10, Agosto 19") >>> m 'hello number 20, Agosto 19'
或者
使用lookbehind
>>> number = "20" >>> number '20' >>> m = re.sub(r'(?<=number )\d+', number, "hello number 10, Agosto 19") >>> m 'hello number 20, Agosto 19'
如果您不知道这个数字,但知道它后面跟着一个
,
对于这种简单的情况,不要使用regex。正常的string manipulation就足够了(而且很快):
你是说这个?
或者
使用lookbehind
相关问题 更多 >
编程相关推荐