美文网首页
正则表达式

正则表达式

作者: AntCaveWeb3 | 来源:发表于2018-06-14 13:10 被阅读0次

是什么?

正则表达式是一组由字母和符号组成的特殊文本, 它可以用来从文本中找出满足你想要的格式的句子。 其目的是对大量数据做过滤,很多场合都会用到。

比如: 筛选大量的email邮件,是否符合标准格式。

常使用缩写的术语"regex"或"regexp".

实例:

让用户名包含字符,数字,下划线和连字符

^[a-z0-9_-]{3,15}$

仅作为参观,后面详细解释各个字符的作用与常见的正则表达式。

1.基础匹配:    The    匹配    The , 一一对应完全匹配。

"The" => The fat cat sat on the mat.

2.元字符

正则表达式主要依赖于元字符. 元字符不代表他们本身的字面意思, 他们都有特殊的含义. 元字符写在方括号中有一些特殊的意思.

.    匹配任意单个字符,除了回车符
[] 匹配方括号内任意字符 
[^]匹配除方括号内的任意字符
*  匹配*号之前的字符,找到多个(大于等于0)重复的
+  匹配+号之前的字符,找到多个(大于等于1)重复的
?  标识?之前的字符可选
{n,m} 匹配num个字符,(n<num<m)
(xyz)  匹配与字符集xyz完全相对的字符串
|  匹配运算符前或者后的字符
\ 转义字符,用于匹配一些保留字符,如以上提到的字符[ ] ( ) { } . * + ? ^ $ \ |
^  从开始行开始匹配
$  从末端开始匹配

参考:

https://juejin.im/entry/59a651116fb9a024844938b5#1-%E5%9F%BA%E6%9C%AC%E5%8C%B9%E9%85%8D

一般来说 ^ 表示一个字符串的开头, 但它用在一个方括号的开头的时候, 它表示这个字符集是否定的. 例如, 表达式[^c]ar 匹配一个后面跟着ar的除了c的任意字符.

[^c]at 

例如表达式c.+t 匹配以首字母c开头以t结尾,中间跟着任意个字符的字符串.

c.+t 
a+t    匹配:  aaat  aat  at
(at)+t  匹配  atatll  atattt  aaatat

?

(at)+t?    匹配 at  att 

简写字符集

.  换行符外所有字符
\w  匹配所有字母数字 [a-zA-Z0-9]
\W 匹配所有非字母数字 [\w]
\d  匹配所以数字
\D  匹配所有非数字
\s  匹配所有空格
\S  匹配所有非空格 
正向向后约束 (?<=\$)[0-9\.]*. 这个表达式匹配 $ 开头, 之后跟着 0,1,2,3,4,5,6,7,8,9,. 这些字符可以出现大于等于 0 次.
(T|t)he(?=\sfat) 匹配 The 和 the, 在括号中我们又定义了前置约束(存在) (?=\sfat) ,即 The 和 the 后面紧跟着 (空格)fat
前置约束-排除 ?! 用于筛选所有匹配结果, 筛选条件为 其后不跟随着定义的格式 前置约束-排除 定义和 前置约束(存在) 一样, 区别就是 = 替换成 ! 也就是 (?!...).
后置约束-存在 记作(?<=...) 用于筛选所有匹配结果, 筛选条件为 其前跟随着定义的格式. 例如, 表达式 (?<=(T|t)he\s)(fat|mat) 匹配 fat 和 mat, 且其前跟着 The 或 the.
后置约束-排除 记作 (?<!...) 用于筛选所有匹配结果, 筛选条件为 其前不跟着定义的格式. 例如, 表达式 (?<!(T|t)he\s)(cat) 匹配 cat, 且其前不跟着 The 或 the.
标志:  i 忽略大小写  g 全局搜索  m多行


相关文章

  • 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/xcqyeftx.html