用python正则表达式可以做到,因为点在正则表达式中可以代表任意字符(除回车换行符外)
正则表达式 (\-?\d+). 替换成 \1\t (\1表示第一捕获组的数据)
完整的Python程序如下
import res = '-111•485503•剩余部分'
regex = r'(\-?\d+).'
result = re.sub(regex,r"\1\t",s)
print(result)
python中提供了3种通过正则表达式匹配字符串的方法。种通过正则表达式匹配字符串的方法有以下三种。1、贪婪匹配与非贪婪匹配:在定义用于匹配的模式串时,使用.*,则为贪婪匹配。使用.*,则为非贪婪匹配。
2、indall与search的选取问题:自己定义的模式串只能匹配到一个结果,使用search方法结合group方法可以直接得到这个字符串。自己定义的模式串能匹配到多个结果,则使用findall方法可以得到存储多个结果字符串的列表。
3、匹配时"()"和[]的用法:目标字符串‘abcde’[…]会匹配在[]内的任意一个字符,而不会匹配整个字符串。(…)会匹配在()内的整个字符串。使用search方法时则正常匹配(相当于没有()),使用findall方法时则只会匹配(…)的内容。)[]同时出现,考虑(…)式的字符串与[…]式内的字符和顺序,使用findall方法时结果会舍弃[…]内容,使用search方法时则正常匹配(相当于没有()和[])。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)