正則表達式是用特定語法描述文本模式的工具,支持各種編程語言和文本編輯器。
?? 核心語法速查
基礎(chǔ)匹配
hello 匹配 "hello"
123 匹配 "123"
元字符
. 匹配任意字符(除換行符)
\d 匹配數(shù)字 ≡ [0-9]
\w 匹配字母數(shù)字下劃線 ≡ [a-zA-Z0-9_]
\s 匹配空白符(空格、制表符等)
量詞
* 零次或多次
+ 一次或多次
? 零次或一次
{3} 恰好3次
{3,5} 3到5次
字符組
[abc] 匹配 a/b/c
[^abc] 匹配非 a/b/c
[a-z] 匹配小寫字母
[0-9A-Z] 匹配數(shù)字和大寫字母
位置錨點
^ 字符串開始
$ 字符串結(jié)束
\b 單詞邊界
?? 實戰(zhàn)示例
1. 手機號驗證
^1[3-9]\d{9}$
2. 郵箱驗證
^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
- 匹配:
user.name+123@example.com.cn
3. 提取日期
\d{4}-\d{2}-\d{2}
- 匹配:
2024-01-15
from "日期:2024-01-15,時間:12:30"
4. 匹配中文
[\u4e00-\u9fa5]+
- 匹配:
中文測試
from "Hello中文測試ABC"
5. 密碼強度驗證
^(?=.*[A-Z])(?=.*[a-z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}$
- 必須包含:大寫字母、小寫字母、數(shù)字、特殊字符,至少8位
6. URL提取
https?://[^\s/$.?#].[^\s]*
- 匹配:
https://www.example.com/path?query=123
7. IP地址匹配
(\d{1,3}\.){3}\d{1,3}
8. 提取HTML標簽內(nèi)容
<(\w+)>[^<]*</\1>
?? 常用技巧
分組捕獲
(\d{3})-(\d{4})
- 匹配
010-1234
,分組捕獲:010
和 1234
非貪婪匹配
<.*?> 匹配最短的標簽
<.*> 匹配最長的標簽
或操作
(jpg|png|gif)
?? 注意事項
- 轉(zhuǎn)義特殊字符:
. * + ? ^ $ [ ] ( ) { } | \
??? 在線工具推薦
記住:正則表達式不是萬能的,但掌握后能解決90%的文本處理問題!
閱讀原文:原文鏈接
該文章在 2025/9/12 11:49:35 編輯過