【写在最前】
我们在平时的编程学习中,经常会接触到“正则表达式”这个概念;
但是很多小白傻傻分不清楚它的正确用法以及适用场景,甚至是在查阅了很多资料之后仍然是云山雾罩 。
通过本文知识,让我们花5分钟时间彻底搞懂它,相信聪明的你,看完一定会有收获 。
# 基本知识【5分钟搞懂<正则表达式>】定义: 正则表达式定义了字符串的匹配模式 。
适用: 正则表达式可以用来匹配、搜索、替换文本 。
注意: 正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别 。
# 常用符号学习正则表达式有很多符号,大体可归纳为 5 种类型:
1) 括号
小括号:表示精准匹配
(x|y):精确匹配字符串( | 符号用于分隔“或”关系的选项)
中括号: 表示模糊匹配
[abc]: 模糊匹配a,b,c任意一个字符
[a-z]:模糊匹配a-z任意一个小写字母
[0-9]: 模糊匹配0-9任意一个数字
大括号:表示匹配多次
{n} : 匹配n次
{m,n}:匹配m到n次 (m可省略,即:{,n} 表示匹配0到n次)
举例: "/pre{1,5}/" 表示匹配在"pr"后面出现1个到5个"e"的字符串,2) 元字符
比如"pre"、"pree"、"preeeee"
d :匹配任意一个数字字符,等价于定义 [0-9]
. : 匹配任意一个英文字符
w: 匹配任意一个单词(包括下划线)(约等价于定义“[A-Za-z0-9_]”,这里的"单词"字符使用Unicode字符集(并不是所有语言都支持w写法)
3) 量词符号
*: 匹配元字符“前”的字符出现零次或者多次,等价于定义 "{0,}" 。
举例: "/ac*/" 表示匹配在"a"后面出现零个或者多个"c"的字符串 。?: 匹配元字符前的字符出现零次或者1次,等价于定义 "{0,1}" 。
比如:"App"、"acp"、"accp"等
+: 匹配指定元字符出现的一次或者多次,等价于定义 "{1,}
4) 其他符号:
^ : 匹配字符串的开始(注意:当且仅当^定义在中括号[]内部时表示”非“关系)
$ : 匹配字符串的结束
5)特殊的标记修饰符
标记修饰符(flags)不写在正则表达式里,而位于表达式之外,
格式如下:/pattern/flags
常见的flags标记修饰符有:
i: 表示匹配是无需区分大小写
g: 表示全部都需要匹配(而不是只匹配第一个)
m: 表示需要匹配多行(而不是只匹配第一行)
# 综合举例新用户注册时,只允许:用户名包含字符、数字、下划线、连字符,长度限制最端3位,最长15位,那么其正则表达式如下图:
文章插图
【全文完】
----------------------------------------
十年技术沉淀,只做原创文章;
及时关注作者,成就大牛之路!
推荐阅读
- 角色|米哈游新作《绝区零》女角色介绍:妮可·德玛拉
- 联想|B&W四扬声器系统加持!联想YOGA Air 14c翻转本发布定了
- Pesce d&apos;aprile的由来,愚人节跟鱼有什么关系?
- 孩子写字潦草,家长愁? 震撼世界的15分钟
- 食疗6偏方 除宿便&quot;轻&quot;肠胃
- 坚持15分钟!想变多长就有多长
- 黑色沙漠手游|广东男子花100元体验5分钟抓鱼,谁知一抓一个准,老板大喊你慢点
- 白酒|曝“i茅台”APP将上线53°飞天茅台:100ml售价399元/瓶
- 开晨会的励志小故事?早会5分钟激励小故事
- 股市|大举抄底腾讯、京东、阿里等 华尔街巨头"全面看多"中概股