type
status
date
slug
summary
tags
category
icon
password
正则表达式
正则表达式!启动!
正则表达式与元字符
定义:
😎一个String对象的字符序列中具有特殊意义的字符叫做 元字符 !<br>😮正则表达式是一个String对象的字符序列
常用元字符表😍
正则表达式 | 意义 |
. | 表示任何一个字符 |
\\\\. | 代表 . 这个字符 |
\\\\d | 0 ~ 9 任何一个数字 |
\\\\D | 非数字字符 |
\\\\s | 空格类字符,例 \t \n \x0B(垂直制表符) \f(换页符) \r(回车符) |
\\\\S | 非空格类 |
\\\\w | 可用于标识符的字符 |
\\\\W | 不能用于标识符 |
\\\\p{Lower} | 小写a ~ z |
\\\\p{Upper} | 大写A ~ Z |
\\\\p{ASCII} | ASCII码 |
\\\\p{Alpha} | 字母 |
\\\\p{Digit} | 0 ~ 9 任何数字 |
\\\\p{Alnum} | 数字或者字母 |
\\\\p{Punct} | 标点符号:键盘上面你能在数字和字母外打出来符号 |
\\\\p{Graph} | 可视标点:\p{Alnum} \p{Punct} |
\\\\p{Print} | 可打印的 |
\\\\p{Blank} | 空格或者制表符 |
\\\\p{Cntrl} | 控制符:[\x00 ~\\x1F\\x7F] (附表1附加解释) |
补充说明🤐 <br>\\\\d 与 \\\\p{Digit} 不同之处在于 >>> 前者匹配的是ASCII码,而后者匹配的是Unicode码。也就是说别的语言的数字也可以匹配("一二三"✔)<br> \\\\p{Alpha} 也一样匹配Unicode码
用方括号表示一个元字符👍 (最常用)
基础用法
- \[abc]:代表a,b,c中的任何一个
- \[^abc]:除去a,b,c中的任何一个
- \[a-zA-Z]:英文字母
- \[a-d]:a ~ d任何一个
交·并·差
🤤- \[a-d[m-p]]:
a ~ d
或者m ~ p
- \[a-z&&[def]]:
取交集
- \[a-f&&[^bc]]:
两个集合的差值
限定修饰符🤯

总结
元字符
和 限定修饰符
任意组合 就构成了 正则表达式!
<br>常见-正则表达式😍
匹配整数
匹配浮点数
匹配 E-mail 形式
匹配身份证号码
匹配日期
匹配URL
这个正则表达式可以匹配HTTP和FTP协议的URL
匹配IP地址
这个正则表达式可以匹配IPv4地址。
匹配手机号码
匹配中文字符
这个正则表达式可以匹配任何中文字符,它使用Unicode范围来定义中文字符。
匹配密码强度
(至少一个大写字母,一个小写字母,一个数字,一个特殊字符,长度至少8位)
这个正则表达式使用正向先行断言(positive lookahead)来确保密码满足所有条件。
IN 23/6/2024
转载请说明出处❤️
- 作者:PanDa
- 链接:Panda_Clog | 代码Vlog (c.pandaclog.xyz)/article/11c0312b-e533-8072-8f54-d590d08d7818
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。