正则表达式

基本匹配规则

  1. . 匹配 任意1个字符,除了\n
  2. \d 匹配数字,即 0-9
  3. \D 匹配非数字,即 不是数字
  4. \s 匹配空白,即 空格,tab键
  5. \S 匹配 非空白
  6. \w 匹配单词字符,即 a-z,A-Z,0-9,_,支持语言(中文….)
  7. \W 匹配非单词字符
  8. [] 匹配[]中列举的字符,中括号中 只取一个
  9. r忽略转义字符打印

mm = r”\nabc”
# 输出 \nabc

re.match(r”\nabc”,mm)
# 输出 \\nabc

[123] 只能是 123中的一个

[^123] 取反,只要 不是123都可以

[a-z5-9] 26个小写字母,5到9

数量匹配问题

  1. * 匹配字符可以出现0次或者无限次,即可有可无
  2. + 匹配字符可以出现1次或者无限次,即至少有一次
  3. ? 匹配字符可以出现0次或者1次,即要么有1次,要么没有
  4. {m} 匹配字符出现m次
  5. {m,} 匹配字符至少出现m次
  6. {m,n} 匹配字符出现从m到n次
  7. ^ 匹配字符串开头
  8. $ 匹配字符串结尾

手机号描述:**(“1[35678]\d{9}”, “13666666666”)**

分组匹配

  1. | 匹配左右任意一个表达式
  2. (ab) 将括号中字符作为一个分组
  3. \1 引用第一个分组匹配到的字符串
  4. (?P<name>) 分组起别名
  5. (?P=name) 引用别名为name分组

相关文章

简单的网络知识

Git使用教程

HTTP

GitHub搜索技巧