Lazy loaded image
技术分享
🤩正则表达式
字数 597阅读时长 2 分钟
2024-6-23
2024-10-12
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]]:两个集合的差值

限定修饰符🤯

notion image

总结

元字符限定修饰符 任意组合 就构成了 正则表达式! <br>

常见-正则表达式😍

  • 匹配整数
  • 匹配浮点数
  • 匹配 E-mail 形式
  • 匹配身份证号码
  • 匹配日期
  • 匹配URL
这个正则表达式可以匹配HTTP和FTP协议的URL
  • 匹配IP地址
这个正则表达式可以匹配IPv4地址。
  • 匹配手机号码
  • 匹配中文字符
这个正则表达式可以匹配任何中文字符,它使用Unicode范围来定义中文字符。
  • 匹配密码强度(至少一个大写字母,一个小写字母,一个数字,一个特殊字符,长度至少8位)
这个正则表达式使用正向先行断言(positive lookahead)来确保密码满足所有条件。

IN 23/6/2024

转载请说明出处❤️
上一篇
<每日一题>洛谷-P1563 [NOIP2016 提高组] 玩具谜题
下一篇
<Python> 快速排序

评论
Loading...