美文网首页
正则表达式

正则表达式

作者: 白菜炖豆腐 | 来源:发表于2016-05-12 22:04 被阅读0次

    正则表达式中具有特殊含义的字符称之为元字符,常用的元字符有:

    • \ 一般用于转义字符
    • \d 匹配数字
    • \s匹配任意的空白符——空格,制表符(Tab),换行符,中文全角空格等
    • \w匹配字母、数字、下划线、汉字等
    • ^ 断言目标的开始位置(或在多行模式下是行首)
    • $ 断言目标的结束位置(或在多行模式下是行尾)
    • . 匹配除换行符外的任何字符(默认)
    • [ 开始字符类定义
    • ] 结束字符类定义
    • | 开始一个可选分支
    • ( 子组的开始标记
    • ) 子组的结束标记
    • ? 作为量词,表示 0 次或 1 次匹配。位于量词后面用于改变量词的贪婪特性。 (查阅量词)
    • * 量词,0 次或多次匹配
    • + 量词,1 次或多次匹配
    • { 自定义量词开始标记
    • } 自定义量词结束标记

    元字符具有两种使用场景,一种是可以在任何地方都能使用,另一种是只能在方括号内使用,在方括号内使用的有:

    • \ 转义字符
    • ^ 仅在作为第一个字符(方括号内)时,表明字符类取反
    • - 标记字符范围

    其中^在反括号外面,表示断言目标的开始位置,但在方括号内部则代表字符类取反,方括号内的减号-可以标记字符范围,例如0-9表示0到9之间的所有数字。

    贪婪模式和懒惰模式

    正则表达式中每个元字符匹配一个字符,当使用+之后将会变的贪婪,它将匹配尽可能多的字符,但使用问号?字符时,它将尽可能少的匹配字符,既是懒惰模式。

    • 贪婪模式:在可匹配与可不匹配的时候,优先匹配
    • 懒惰模式:在可匹配与可不匹配的时候,优先不匹配
    • 当我们确切的知道所匹配的字符长度的时候,可以使用{}指定匹配字符数

    匹配任意字符的写法

    ([\s\S])或([\d\D])或([\w\W]*)
    匹配所有的英文 /[ -~]/
    匹配所有的非英文(比如中文) /[^ -~]/

    js风格的正则在线验证网站,挺好用的

    相关文章

      网友评论

          本文标题:正则表达式

          本文链接:https://www.haomeiwen.com/subject/humprttx.html