Pyhton入门 笔记 第四天 正则表达式与JSON

一,正则的替换

import re

lanuage='PythonC#JavaC#PHPC#'

r=re.sub('C#','Go',lanuage,1)  #sub替换函数 ,第一个参数为要被替换的单词如:C#,第二个参数为被替换成为的结果单词如:GO,第三个参数为字符集如:lanuage,第四个参数为被替换的次数,默认为0表示无限替换,不设限制。正例为1表示只替换一次,第五个参数为模式,可忽略。

print(r)

结果:PythonGOJavaC#PHPC#

上面的sub函数也可以用replace代替 

lanuage.replace('C#','GO')  # 但要注意,pyhton语言中str是不可变的,所以不可被更换的。当要打印时要赋值给变量

tngh=lanuage.replace('C#','GO')  #此时才能打印

print(tngh)   

二,动态替换

import re

lanuage='PythonC#JavaC#PHPC#'

def convert(value):

    matched=value.group()         #当C#以value值的形式传入到convert函数中时,是一个对象object的形式,所以无法直接输出或打印,要通过group()函数转换。

    return '||'+matched+'||'

r=re.sub('C#',convert,lanuage)   #以函数为替换结果

print(r)

结果:Python||C#||Java||C#||PHP||C#||

猜你喜欢

转载自www.cnblogs.com/tngh/p/9317108.html