正则表达式语法及应用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lsy1072/article/details/79307182

正则表达式

概念

正则表达式(regular expression)常用于对文本数据进行检索,替换,提取和修改操作。
描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。

语法

语法规则

要点

3个重要的正则式命令
括号,插入符号和美元符号

括号

在正则表达式中有3中类型的括号。

括号 符号 说明
中括号 [] 需要匹配的内容
花括号 {} 指定匹配字符的数量
圆括号 () 用来分组的

插入符号^

插入符号表示正则表达式的开始

美元符号$

美元符号表示正则表达式的结束

例子

检验网址的URL格式
  1. 检查是否存在www:
^www.
  1. 域名必须长度必须在1-15的英文字母:
[a-z]{1,15}
  1. 以.com或者.org结束:
.(com|org)$

完整表达式

^www[.][a-z]{1,15}[.](com|org)$

Reluctant 数量词


X?  X,一次或一次也没有
X*  X,零次或多次
X+  X,一次或多次
X{n}    X,恰好 n 次
X{n,}   X,至少 n 次
X{n,m}  X,至少 n 次,但是不超过 m 次

贪婪模式和非贪婪模式

贪婪模式和非贪婪模式是针对于量词的,如*+?
贪婪模式(默认):会尽可能的匹配长度最大的匹配.
非贪婪模式(在量词后面加?):会最小长度的匹配字符

  • 贪婪模式
    这里写图片描述

  • 非贪婪模式
    这里写图片描述

例子

http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?
正则表达式 说明
http(s)? 匹配http或者https
([\w-]+.)+[\w-]+ 匹配多个多个以任意字母,下划线以及-和.组成的以及多个任意字符和下划线组成的字符串,”a-bc.net.”

猜你喜欢

转载自blog.csdn.net/lsy1072/article/details/79307182