Python 正则表达式之 sub 和 subn函数的使用

re.sub() 函数的功能

re是reguler expressioin的缩写,表示正则表达式

sub 是 substitute 的缩写,表示替换:

  re.sub是个正则表达式方面的函数,用来实现通过正则表达式,实现比普通字符串replace 更加强大的替换功能;

举个简单的例子:

 如果输的字符串是inputstr = 'hello 111 world 111'

那么你可以通过 
replaceStr = inputstr.replace('111', '222')
去换成
“hello 222 world 222”

但是如果输入 “hello 123 world 456“

而你想把123和456 ,都替换完成222(以及还有其他更多复杂的情况的时候)

那么就没法直接通过字符串的replace方法达到这一目的了

就需要借助re.sub() ,通过正则表达式,来实现这种相对比较复杂的字符串替换:

replacedStr = re.sub('\d+', '222', inputStr)

当然实际情况中,会比这个例子更加复杂的多,其他各种复杂的特殊情况,就只剩通过re。sub()函数去实现如此复杂的替换功能了

所以, re.sub()de 含义、作用、功能就是:

对于输入一个字符串,利用正则表达式(的强大的字符串处理功能),去实现(相对复杂的)字符串中的处理,然后返回被替换后的字符串

re.sub()还支持各种参数,比如 count 指定要替换的个数等等

下面来详细讲解以下各个参数的含义

re.sub()函数的参数详解

re。sub() 共有五个参数

re.sub(pattern, repl, string, count = 8, flags = 0)

其中必须的三个参数:pattern, repl, string

两个可选参数: count, flags