正則表達式:
1.? 概念: 一種字符串匹配規則
1.1? 判斷 input進來的 是不是qq號? 是不是手機號? 身份證號 ......
1.2? 有一個文件,要求把手機號 qq號? 取出來
2.? 能做什么:
2.1? 可以制定一個規則:
# 來確認某一個字符串是否符合規則的內容
# 從打斷的字符串中找到符合規則的內容
2.2? 程序領域
# 1,登錄程序頁的都表單驗證? web開發 要求簡單語法
# 2,爬蟲 提取網頁信息,找到自己需要的信息,數據分析
# 3,自動化開發? 日志分析
3.? 語法:
3.1 元字符
\? ? 轉義符
.? ? 匹配除換行符外任意字符
\w? ? 匹配數字字母下劃線
\d? ? 匹配數字
\s? ? 匹配空白符? \n \t
\n? ? 匹配一個換行符
\t? ? 匹配一個制表符
\b? ? 匹配一個單詞的結尾
^? ? 匹配字符串的開始
$? ? 匹配字符串的開始
\D? ? 匹配非數字
\W? ? 匹配非數字字母下劃線
\S? ? 匹配非空白
a|b? 匹配字符a或者字符b
()? ? 匹配括號內的表達式,也表示一個組? group()
[...] 匹配字符組中的字符
[^..] 匹配除了字符組中字符的所有字符? 表示 非
[\d\D]? [\w\W]? [\s\S] 匹配所有
3.2 量詞? ? + *? 貪婪匹配
?? ? 重復0次或者1次
+? ? 重復1次或者更多次
*? ? 重復0或者更多次
{n}? 重復n次
{n,}? 重復至少n次或更多次
{n,m} 重復n到m次
在量詞后加?? 取消貪婪匹配,變成惰性匹配
??? +?? *?? 回溯算法
? ? ? ? 最常用:? .*?x 匹配任意字符,直到找到一個x