正則表達式 :(?s)(?i)'\\s*+ 前面的(?s)(?i) 表示什么意思啊?
1 回答

陪伴而非守候
TA貢獻1757條經驗 獲得超8個贊
這個是正則表達式的模式修飾符。
(?i)即匹配時不區分大小寫。表示匹配時不區分大小寫。
(?s)即Singleline(單行模式)。表示更改.的含義,使它與每一個字符匹配(包括換行 符\n)。
(?m)即Multiline(多行模式) 。 表示更改^和$的 含義,使它們分別在任意一行的行首和行尾匹配,而不僅僅在整個字符串的開頭和結尾匹配。(在此模式下,$的 精確含意是:匹配\n之前的位置以及字符串結束前的位置.)
(?x):表示如果加上該修飾符,表達式中的空白字符將會被忽略,除非它已經被轉義。
(?e):表示本修飾符僅僅對于replacement有用,代表在replacement中作為PHP代碼。
(?A):表示如果使用這個修飾符,那么表達式必須是匹配的字符串中的開頭部分。比如說"/a/A"匹配"abcd"。
(?E):與"m"相反,表示如果使用這個修飾符,那么"$"將匹配絕對字符串的結尾,而不是換行符前面,默認就打開了這個模式。
(?U):表示和問號的作用差不多,用于設置"貪婪模式"。
- 1 回答
- 0 關注
- 1370 瀏覽
添加回答
舉報
0/150
提交
取消