前言:
现时大家对“java正则替换”可能比较珍视,大家都想要知道一些“java正则替换”的相关内容。那么小编也在网摘上网罗了一些对于“java正则替换””的相关资讯,希望你们能喜欢,你们一起来学习一下吧!一、re.sub使用方法讲解
python的替换是使用正则表达式re模块内置的函数sub,函数使用如右:re.sub(pattern, repl, string, count, flags)1、re是python的内置正则表达式模块2、sub英文是替换的意思,在字符串里将旧的内容按照一定的匹配规则替换为新的内容3、pattern代表正则表达式的匹配规则,可以直接写,也可以用re.compile获取,必选参数4、repl就是replacemen,代表替换成新的内容,这个内容可以是固定的字符串数字,也可以是一个函数的返回值,必选参数5、string代表要从中查找的字符串,必选参数6、count可选项,代表要替换的个数7、flags可选项,用来控制匹配模式,分别是:①re.I :I的英文单词是IGNORECASE,使匹配对大小写不敏感,②re.L :L的英文单词是LOCALE,做本地化识别(locale-aware)匹配,③re.M :M的英文单词是MULTILINE,多行匹配,影响 ^ 和 $,④re.S :使 . 匹配包括换行在内的所有字符,⑤re.U :U的英文单词是Unicode,根据Unicode字符集解析字符。这个标志影响 \w, \W, \b, \B,⑥re.X :该标志通过给予你更灵活的格式以便你将正则表达式写得更易于理解。
二、re.sub使用案例讲解:
re.sub共计有两种替换方法,分别是固定值替换法,函数返回值替换法,代码如下所示:
import re #必须导入内置的正则表达式re模块str1='zhangsan,ZLVV12,1245,fsds,adf12' #设置字符串str1的值#以下的sub是固定替换法pattern1=re.compile(r'[a-z]+\d+') #设置正则表达式匹配规则,至少1个小写字母+至少一个数字,并将匹配规则赋值给pattern1result1=re.sub(pattern1,"123",str1) #从str1中根据匹配规则pattern1将匹配出来的结果替换为"123"print("result1:"result1) #打印result1的值#以下是sub的函数返回值替换法def fun(arg): #定义函数fun,参数为arg int1=arg.group() #将参数arg的分组值赋值给int1 int2=int(int1)+1 #将int1转变为整数,并加1,最后赋值给int2 return str(int2) #返回已经转换成字符串的int2的值result2=re.sub(r'\d+',fun,str1) #将str1里符合至少1个数字的匹配的数据取出来并按照fun函数的返回值进行替换,即在原值的基础上加1,最终赋值给result2print("result2:",result2) #打印result2的值
代码运行结果如下:
zhangsan,ZLVV12,1245,fsds,123
zhangsan,ZLVV13,1246,fsds,adf13
图片示例如下:
版权声明:
本站文章均来自互联网搜集,如有侵犯您的权益,请联系我们删除,谢谢。
标签: #java正则替换