正则表达式学习
Kale

正则表达式很实用,之前也用过,不过是跟着网上的教程拼出来的,所以今天来系统学习一下正则表达式.

元字符

正则表达式有元字符,正则表达式就是由普通字符和元字符组成,普通字符没有特殊含义,而元字符都是有着特殊的含义,下面是一些元字符的含义.有个规律是很多的元字符转换大小写之后就会变成相反的含义.

  1. \d

    用来匹配一个数字字符.如果要匹配多个数字,可以搭配其余元字符使用.
    \D则是匹配一个非数字字符.

  2. .

    .是用来匹配任意一个字符的,一个点代表一个字符,通用性很强.如果要匹配的字符串中含有.,则需要通过\来转义.

  3. \w

    只用来匹配字母和数字,而不匹配标点符号.\W则是匹配除字母和数字外的符号.

  4. \s

    用来匹配空格,这里的空格也包含tab.\S则是匹配除空格外的所有字符了.

  5. +

    +号前面的字符至少出现一次,即一次或者多次.

  6. *

    *号前面的字符可以出现0次或者多次.

  7. ?

    ?号前面的字符可以出现0次或者1次.

  8. {,}

    {,}可以说是非常强大了,它可以替代前面很多元字符的功能,不过为了清晰,还是会使用更加简洁的写法.{,}的作用是指定重复范围,比如{1,}则是与+号的功能一致,可以出现一次或者多次.

  9. [,]

    [,]是字符集合,给要匹配的字符指定一个范围,比如[a,z]则是匹配所有所有在a到z之间的字符.一个[,]匹配一个字符,可以和上面的元字符结合使用用来表示字符串.

  10. (,)

    分组匹配,可以取出匹配到的元素.

掌握了上面的知识后,其实就可以满足日常的需求了,上次爬B站的数据的时候需要提取av号,那个时候正则表达式写得很笨,现在可以修改一下.
https://www.bilibili.com/video/av87339507
这样一个网址,如果需要匹配后面的av号,现在写起来就很简单了,写成正则表达式形式就是/\d+/,很简单了.
alt
alt

  • 本文标题:正则表达式学习
  • 本文作者:Kale
  • 创建时间:2020-02-12 02:03:57
  • 本文链接:https://kalew515.com/2020/02/12/正则表达式学习/
  • 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!