正規表示式學習記錄

2022-09-08 12:51:08 字數 537 閱讀 4430

q:經常看見的正則前面的 (?i) (?s) (?m) (?is) (?im) 是什麼意思?

a: 稱為內聯匹配模式,通常用內聯匹配模式代替使用列舉值regexoptions指定的全域性匹配模式,寫起來更簡潔。

(?i) 表示所在位置右側的表示式開啟忽略大小寫模式

(?s) 表示所在位置右側的表示式開啟單行模式。

更改句點字元 (.) 的含義,以使它與每個字元(而不是除 \n 之外的所有字元)匹配。

注意:(?s)通常在匹配有換行的文字時使用

(?m) 表示所在位置右側的表示式開啟指定多行模式。

更改 ^ 和 $ 的含義,以使它們分別與任何行的開頭和結尾匹配,

而不只是與整個字串的開頭和結尾匹配。

注意:(?m)只有在正規表示式中涉及到多行的「^」和「$」的匹配時,才使用multiline模式。

上面的匹配模式可以組合使用,比如(?is),(?im)。

另外,還可以用(?i:exp)或者(?i)exp(?-i)來指定匹配的有效範圍。

本文是在問答上看見的,僅用作備忘錄用,方便查詢

學習記錄 正規表示式

學習記錄 正規表示式 註明 記錄工作和學習中常用的正規表示式以及php中常用得兩個函式preg match all preg replace 特殊字元類含義.所有字元 d所有數字 d所有非數字 w數字字母下劃線 w非數字字母下劃線 s 換行等空白區域 s非空白區域 1 匹配字元1 1 3 匹配字元1...

學習正規表示式記錄

表1.常用的元字元 說明 匹配除換行符以外的任意字元 w匹配字母或數字或下劃線或漢字 s匹配任意的空白符 d匹配數字 b匹配單詞的開始或結束 匹配字串的開始 匹配字串的結束 1.d 這個是驗證輸入5到12位的數字 2.語法說明 重複零次或更多次 重複一次或更多次 重複零次或一次 重複n次 重複n次或...

正規表示式學習記錄

表示用什麼開頭 b 表示以b開頭的字元 表示以什麼結尾 3 表示以3結尾的字元 代表任意字元 代表出現任意個數,包括0次 代表出現必須大於1次,不包括0次 代表出現2次 代表任意字元出現2次 代表出現3次和3次以上 代表出現2 5次 非貪婪匹配 從左邊開始匹配 如 匹配aaxooooooxoxxjf...