Java-Basic-and-Advanced/正则表达式.md
2025-04-08 17:33:51 +08:00

55 lines
1.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 正则表达式,较为难
本质来说就是一个字符串,用来指定一些规则校验字符串
1. **字符类(默认匹配一个字符)**
[] 表示单个字符
[abc] 只能为abc.
[^abc] 只能为abc之外的任意字符
[a-zA-Z]a到zA到Z包括范围也可以有数字
[a-d[m-p]]a到d之间或者m-p之间都可以并集
[a-z&&[def]] a-z和def之间的交集
[a-z&&[\^bc]] \需要去掉 表示a-z除了bc
2. **预定义字符类(默认匹配一个字符):** **注意:使用时需在前面加转义字符\\**不能只有一个反斜杠
. 任意字符
\d 只能是数字
\D 非数字 [\^0-9]
\w 英文数字下划线
\W 除了英文数字下划线 一个非单词字符
\s 一个空白字符
\S 一个非空白字符
3. **量词(配合匹配多个字符)**
X X出现一次或者0次
X* X出现0次或者多次(任意次数)
X+ 一次或多次
X{n} 正好n次
X{n, } 至少n次
X{n,m} 至少n次不超过m次
实际干活时候,面向复制编程。直接百度搜就行
## 使用正则做爬取:
<img src="https://gitee.com/icecat2233/picture/raw/master/20250408162920380.png" alt="image-20250408162910313" style="zoom:67%;" />