正規表示式

2022-01-12 19:59:01 字數 1284 閱讀 8793

我的工作內容以資料監控為主,正規表示式在我的工作中應用比較多。

他對字串的處理和驗證非常高效。現將一些自己積累常用的表示式收集於此,以饗讀者。

匹配**號碼:^\d-\d|^\d-\d|1[358]d$

注:匹配形式如 021-87886699 或 0550-5233222 或 13023218757

匹配中文字元的正規表示式: [\u4e00-\u9fa5]

注:中文字元在字元編碼裡的範圍,中國人只認識中文、abc、123,那就用[\u4e00-\u9fa5a-za-z0-90-9]吧。

匹配雙位元組字元:[^\x00-\xff]

注:可以用來計算從第乙個雙位元組字元開始的字串的長度(乙個雙位元組字元長度計2,ascii字元計1)

匹配空白行的正規表示式:\n\s*\r

注:可以用來刪除空白行 c#中 regex.replace(objstring,@"[\n\s+\r]","");

匹配首尾空白字元的正規表示式:^\s*|\s*$

注:可以用來刪除行首行尾的空白字元(包括空格、製表符、換頁符等等),非常實用。

匹配**url的正規表示式:[a-za-z]+://[^\s]*

注:如果非要追求專業,那就用 ^((http|https)://)([a-za-z0-9.]+[/\]*)+([a-za-z0-9.]+[?])

匹配身份證:\d|\d

注:中國的身份證為15位或18位

匹配整數:^-?[1-9]\d*$

匹配正整數:^[1-9]\d*$

匹配負整數:^-[1-9]\d*$

匹配非負整數(正整數 + 0):^[1-9]\d*|0$

匹配非正整數(負整數 + 0):^-[1-9]\d*|0$

匹配正浮點數:^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$

匹配負浮點數:^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$

匹配浮點數:^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$

匹配非負浮點數(正浮點數 + 0):^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$

匹配非正浮點數(負浮點數 + 0):^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$

匹配由數字和26個英文本母組成的字串:^[a-za-z0-9]+$

匹配由數字、26個英文本母或者下劃線組成的字串:\w+$

匹配帳號是否合法(字母開頭,允許5-16位元組,允許字母數字下劃線):^[a-za-z][a-za-z0-9_]$

正規表示式 正規表示式 總結

非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...

正規表示式 表示式

網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...

Linux正規表示式 編寫正規表示式

為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...