rlike中匹配全形的空格

另一隻蝴蝶發表於2019-03-14

  在一個正則匹配中遇到一個問題,就是使用rlike '發\\s票' 匹配不到,但是 rlike '發.票' 卻可以。

  使用rlike '發.票' 將資料匯出之後,使用sublime檢視,中間的字元不是空格。

  然後使用urlencode之後是%e3%80%80%,直接輸出的話是12288。查詢得知是全形的空格符號。

  這樣的話判斷的方式就變成了:rlike '發[\\s\\p{Zs}]票',順利通過。參考連結:關於JAVA正則匹配空白字元的問題(全形空格與半形空格)

  關於\p的意思,摘抄了一段百度百科的釋義。

小寫 p 是 property 的意思,表示 Unicode 屬性,用於 Unicode 正表示式的字首。中括號內的“P”表示Unicode 字符集七個字元屬性之一:標點字元。

其他六個屬性:

L:字母;

M:標記符號(一般不會單獨出現);

Z:分隔符(比如空格、換行等);

S:符號(比如數學符號、貨幣符號等);

N:數字(比如阿拉伯數字、羅馬數字等);

C:其他字元。

*注:此語法部分語言不支援,例:javascript。

 

 

相關文章