7.18.2 strip()的正则表达式版本
题意描述 摘自《Python编程快速上手–让繁琐工作自动化》P136
写一个函数,它接受一个字符串,做的事情和strip()字符串方法一样。如果只传入了要去除的字符串,没有其他参数,那么就从该字符串首尾去除空白字符。否则,函数的第二个参数指定的字符将从该字符串中去除。
import re
def strip_ver(arg1, arg2=''):
if arg2 == '':
#TODO1 One Arg - remove ' '
reqRegex = re.compile(r'\S+(.|\n)*\S+')
return reqRegex.search(arg1).group()
else:
#TODO2 Two Args - remove arg2 from arg1
return re.sub(arg2, '', arg1)
str = ' 110*\n hel\nlo1\t234\n11\t!\nt*** '
# str = '1234飞!!\n1--15671你好'
result = strip_ver(str, '11')
print(result)
经测试,函数功能达到预期效果。