python_re正则表达
Posted MTcx
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python_re正则表达相关的知识,希望对你有一定的参考价值。
#1、正则表达式使用: 用来匹配字符的
普通字符:大多数字符和字母都会和自身匹配
import re
# s = "hello world"
#
# print(s.find("llo"))
# ret = s.replace("ll","xx")
# print(ret)
# print(s.split("w"))
2元字符: . ^ $ * + ? { } [] | () \
#. 任意匹配(除\n外)
ret = re.findall("h...o","hello world")
print(ret)
#^ 从前匹配
ret = re.findall("^h...o","hewdo world hexno")
print(ret)
#$ 从后匹配
ret = re.findall("w..d$","wdifdhello sdwordwold")
print(ret)
#* 重复匹配
ret = re.findall("ab*","hello world i come aback")
print(ret)
ret = re.findall("a+b","adsdfbadbababdjfn")
print(ret)
#? [0,1]
ret = re.findall("a?b","abdsdfbadbababdjfn")
print(ret)
#{ } 贪婪匹配
ret = re.findall("a{1,3}b","adsdfbaaabbabbbdaadbababdjfn") #{1,}等价于{1,+00}
print(ret)
结论:* 等于 {0到正无穷} + 等价于{1到正无穷} ?等价于{0,1}
#[]字符集:取消元字符的特殊功能
ret = re.findall("[w,,]","awdx.,")
print(ret)
#反斜杠后边跟普通字符实现特殊功能
\d 匹配任何十进制数 它相当于类[0-9]
\D 匹配任何非数字字符 它相当于类[^0-9]
\s 匹配任何空白字符 它相当于类 [ \t\n\r\f\v]
\S 匹配任何非空白字符 它相当于类 [^ \t\n\r\f\v]
\w 匹配任何字母数字字符,它相当于类 [1-zA-Z0-9_]
\W 匹配任何非字母数字字符,它相当于类 [^1-zA-Z0-9_]
#正则表达式的方法:
1、findall(): 所有结果都返回到一个列表里
2、search(): 返回匹配到的一个对象(object),对象可以调用group()返回结果
3、match(): 只在字符串开始匹配时匹配,也返回匹配到的第一个对象(object),对象可以调用group
ret = re.match("assd","asdgfhjdk")
print(ret)
print(ret.group())
以上是关于python_re正则表达的主要内容,如果未能解决你的问题,请参考以下文章