正则表达式
正则表达式
在线正则表达式测试工具:http://tool.oschina.net/regex/ 1.常见匹配模式
?
? 2.re.match从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none re.match(pattern,string,flags=0) 2.1参数pattern:正则表达式 string:待匹配的字符串 flags:修饰符,匹配模式(re.S表示.匹配换行符,re.I表示对大小写不敏感) 2.2返回结果的方法result.group(num=0):匹配的整个表达式的字符串,group() 可以一次输入多个组号,在这种情况下它将返回一个包含那些组所对应值的元组。 result.groups(): result.span():可以输出匹配的范围 2.3例子import re content = ‘‘‘Hello 1234567 World_This is a Regex Demo ‘‘‘ result = re.match(‘^He.*?(d+).*?Demo$‘,content,re.S)#.*?非贪婪匹配任意字符,.转义 print(result.group(1)) 3.re.search?扫描整个字符串并返回第一个成功的匹配 *4.re.findall搜索字符串,以列表形式返回全部能匹配的子串 *5.re.subre.sub(pattern,repl,count=0,flags=0) 替换字符串中每一个匹配的子串后返回替换后的字符串(pattern是正则表达式,repl是替换成的字符串,也可为一个函数对匹配值的操作,string是查找的字符串,count是模式匹配后替换的最大次数,默认 0 表示替换所有的匹配) import re content = ‘Extra stings Hello 1234567 World_This is a Regex Demo Extra stings‘ content = re.sub(‘(d+)‘,r‘1 8910‘,content) print(content) *6.re.compile将正则字符串编译成正则表达式对象 ? regax = re.compile(‘Hello.*Demo‘,re.S) result = re.match(regax,content) print(result) regax有以下方法: regex.search() 在一个字符串中搜索匹配正则表达式的第一个位置,返回match对象 ? ?7.修饰符
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |