美文网首页
正则表达式

正则表达式

作者: ghost__ | 来源:发表于2018-04-09 14:50 被阅读13次

开局一个小demo(想起另外一句话:开局一把西瓜刀)
[a-z][A-Z]8{2} //一个小写字母 后面紧跟一个大写字母 再跟上两个8

修饰符

i 执行对大小写不敏感的匹配
g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)
m 执行多行匹配

方括号

[0-9] 查找任何从 0 至 9 的数字。 
[a-z] 查找任何从小写 a 到小写 z 的字符。 
[A-Z] 查找任何从大写 A 到大写 Z 的字符。 
[A-z] 查找任何从大写 A 到小写 z 的字符。 
[adgk] 查找给定集合内的任何字符。 
[^adgk] 查找给定集合外的任何字符。

(red|blue|green)  查找任何指定的选项。 
例:(a|b|c)找出"bckpohwpoeg"中满足条件并首次出现的b

元字符

. 查找单个字符,除了换行和行结束符。
\w 查找单词字符。 
\W 查找非单词字符。 
\d 查找数字。 
\D 查找非数字字符。 
\s 查找空白字符。 
\S 查找非空白字符。 
\b 匹配单词边界。 
\B 匹配非单词边界。 
\o 查找 NULL 字符。 
\n 查找换行符。 
\f  查找换页符。
\r 查找回车符。 
\t  查找制表符。 
\v  查找垂直制表符。 
\xxx 查找以八进制数 xxx 规定的字符。
\xdd 查找以十六进制数 dd 规定的字符。 
\uxxxx 查找以十六进制数 xxxx 规定的 Unicode 字符。 

量词

n+ 匹配任何包含至少一个 n 的字符串。
例如,/a+/ 匹配 "candy" 中的 "a","caaaaaaandy" 中所有的 "a"。

n* 匹配任何包含零个或多个 n 的字符串。
例如,/bo*/ 匹配 "A ghost booooed" 中的 "boooo","A bird warbled" 中的 "b",但是不匹配 "A goat grunted"。

 n? 匹配任何包含零个或一个 n 的字符串。
例如,/e?le?/ 匹配 "angel" 中的 "el","angle" 中的 "le"。

n{X} 匹配包含 X 个 n 的序列的字符串。
例如,/a{2}/ 不匹配 "candy," 中的 "a",但是匹配 "caandy," 中的两个 "a",且匹配 "caaandy." 中的前两个 "a"。

 n{X,} X 是一个正整数。前面的模式 n 连续出现至少 X 次时匹配。
例如,/a{2,}/ 不匹配 "candy" 中的 "a",但是匹配 "caandy" 和 "caaaaaaandy." 中所有的 "a"。

 n{X,Y} X 和 Y 为正整数。前面的模式 n 连续出现至少 X 次,至多 Y 次时匹配。
例如,/a{1,3}/ 不匹配 "cndy",匹配 "candy," 中的 "a","caandy," 中的两个 "a",匹配 "caaaaaaandy" 中的前面三个 "a"。注意,当匹配 "caaaaaaandy" 时,即使原始字符串拥有更多的 "a",匹配项也是 "aaa"。

 n$ 匹配任何结尾为 n 的字符串。

^n 匹配任何开头为 n 的字符串。 
?=n 匹配任何其后紧接指定字符串 n 的字符串。 
?!n 匹配任何其后没有紧接指定字符串 n 的字符串。 

例子解析

/*
     邮箱验证:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
     
     ^ 行首符 开始 ===>
     
     \w+ 以单词字符开始并且至少有一个单词字符 ===>
     
     ([-+.]\w+)* 括号内表示组成元素 - + .  三种元素中任选一种后面至少紧跟着一个单词字符 但是括号内为一个整体 后面加* 标识可以为0也可以有多个
     
     @ 指定匹配中必须有@字符 ===>
     
     \w+ 以单词字符开始并且至少有一个单词字符 ===>
     
     ([-.]\w+)* 括号内表示组成元素 - . 两种元素中任选一种后面至少紧跟着一个单词字符 但是括号内为一个整体 后面加* 标识可以为0也可以有多个
     
     \. 指定匹配中必须有 . 字符   \ 引用符将.转化为普通的符号 ===>
     
     \w+ 以单词字符开始并且至少有一个单词字符 ===>
     
     ([-.]\w+)* 括号内表示组成元素 - . 两种元素中任选一种后面至少紧跟着一个单词字符 但是括号内为一个整体 后面加* 标识可以为0也可以有多个
     
     $  行尾符 表示结束 这里表示最后必须是一个单词字符 ===>
     
     注意:
        1.[-+.]表示只能匹配方括号里面的一种元素
        2.===>  后面有这个标志的 表示匹配的字符串中必须存在的
        3.上面的匹配顺序不能打乱 必须按照那个顺序
    **/

*常用正则表达式:
http://www.jb51.net/article/76901.htm
http://caibaojian.com/form-regexp.html

相关文章

  • Linux命令行与Shell脚本编程大全-shell正则表达式

    本章内容: 定义正则表达式 了解基本正则表达式 扩展正则表达式 创建正则表达式 定义正则表达式 正则表达式是你定义...

  • 正则相关

    正则表达式基本语法 正则表达式常见字符 正则表达式特殊字符 正则表达式数量词 正则表达式边界匹配 正则表达式逻辑或...

  • 正则表达式系列-1

    正则表达式系列-1正则表达式系列-2正则表达式系列-3正则表达式系列-4 什么是正则表达式 正则表达式就是用事先定...

  • 正则表达式

    正则表达式 - 教程正则表达式 - 简介正则表达式 - 语法正则表达式 - 元字符正则表达式 - 运算符优先级正则...

  • Python基础入门 - 正则表达式与综合实战

    1. 初识正则表达式 1.1 介绍 步骤介绍正则表达式入门及应用正则表达式的进阶正则表达式案例 1.2 正则表达式...

  • Java正则表达式参考

    Java正则表达式入门 java正则表达式应用 深入浅出之正则表达式(一) 深入浅出之正则表达式(二) 正则表达式...

  • 正则表达式

    正则表达式 正则表达式就是记录文本规则的代码 正则表达式常用的元字符 正则表达式常用的限定符 正则表达式举例:这里...

  • Python爬虫(十)_正则表达式

    本篇将介绍python正则表达式,更多内容请参考:【python正则表达式】 什么是正则表达式 正则表达式,又称规...

  • python正则表达式

    本篇将介绍python正则表达式,更多内容请参考:【python正则表达式】 什么是正则表达式 正则表达式,又称规...

  • 正则表达式

    了解正则表达式基本语法 能够使用JavaScript的正则对象 正则表达式简介 什么是正则表达式 正则表达式:用于...

网友评论

      本文标题:正则表达式

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