正则表达式 正则规则(一)

re模块: 正则表达式的模块
  1: 正则表达式 本身是另外一种语言规范. 通过一个规则来从一段字符串中 找到符合规则的内容, 或者判断,某段字符串是否符合规则.
    1, 注册页/ 网页上 要求输入信息, 来判断输入的信息 是否合法.
    2, 爬虫.
  2, 正则规则:
    1, 字符组: [...] 约束字符中某一个字符位置上的值是什么, 只要出现在字符组中的内容就都算匹配
    2, 顺序 是按照 ASCII码的顺序来的.
    3, 匹配多个数字: [0-9]; 匹配多个字母[A-Za-z]; 匹配十六进制[0-9A-Fa-f]
    4, 匹配单词的方法: 元字符


      . 点能匹配任意字符, 除了换行符.
      \d 匹配所有数字.
      \s 匹配所有空白的符
      \w 匹配所有的数字,字母, 下划线.

 

      \n 匹配所有的换行符.
      \t 匹配所有的制表符.
      \b 匹配一个单词的两端.

 

      ^ 匹配字符串的开始. 且永远放在规则的开始
      $ 匹配字符串的结尾. 且永远放在规则的结尾.

 

      \W 匹配非字母或数字或下划线
      \S 匹配非 所有的空白符
      \D 匹配非数字.

      ...|.... 匹配左边的或则匹配右边的, 如果左右两边有重复的 需要把长的放在左边.
      [^...] 匹配非字符组.
      [...] 字符组
      () 匹配括号内的表达式,也表示一个组
    5. 匹配多次的 量词.
      ? 重复0次或者一次.
      + 重复 1次,或者更多次
      * 重复0次 或者更多次

      {n} 重复n次
      {n,} 重复n次或更多次
      {n,m} 重复n到m次
    6. 非贪婪匹配: (.*?)x 遇到x就停下来. 取前面的任意长度的字符,直到x停下来. 尽量少的匹配, 需要在量词的后面加一个?
  2, python如何操作正则表达式.
    r'' 表示取消字符串里面的转义符的转义作用.
    re 模块的两个模块.
      re.findall(正则表达式, 复杂的字符串) 一次性把 匹配到的结果 放到列表里面
      re.search(正则表达式, 复杂的字符串) 一次只匹配第一个符合条件表达式的结果, 以对象的形式返回, 通过对象.group() 取实际的值, 如果没有匹配到结果的话,会返回None, 若是再用.group() 取值会报错.

 

详情内容可见http://www.cnblogs.com/Eva-J/articles/7228075.html#_label10

 

posted @ 2018-07-12 14:50  浮生凉年  阅读(1238)  评论(0编辑  收藏  举报