正規表示式是個很不錯的東西,可以讓你使用指定的模式去分析字串,當年perl通過提供了類似正規表示式的功能後來獨步武林,好不風光(不過現在主流程式語言都提供了正規表示式功能),不過它好像看起來比較古怪而且複雜,而且要記住那些操作符好像比較困難,所以從網上蒐集了並整理了一下,方便自己也方便你,是吧!:
. (匹配任何單個字元。例如正規表示式r.t匹配這些字串:rat、rut、r t,但是不匹配root)
$ (匹配行結束符。例如正規表示式weasel$ 能夠匹配字串"he's a weasel"的末尾,但是不能匹配字串"they are a bunch of weasels."。)
^ (匹配一行的開始。例如正規表示式^when in能夠匹配字串"when in the course of human events"的開始,但是不能匹配"what and when in the"。)
* (匹配0或多個正好在它之前的那個字元。例如正規表示式.*意味著能夠匹配任意數量的任何字元。)
\ (這是引用符,用來將這裡列出的這些元字元當作普通的字元來進行匹配。例如正規表示式\$被用來匹配美元符號,而不是行尾,類似的,正規表示式\.用來匹配點字元,而不是任何字元的萬用字元)
[ ] [c1-c2] [^c1-c2] ( 匹配括號中的任何乙個字元。例如正規表示式r[aou]t匹配rat、rot和rut,但是不匹配ret。可以在括號中使用連字元-來指定字元的區間,例如正規表示式[0-9]可以匹配任何數字字元;還可以制定多個區間,例如正規表示式[a-za-z]可以匹配任何大小寫字母。另乙個重要的用法是"排除",要想匹配除了指定區間之外的字元--也就是所謂的補集--在左邊的括號和第乙個字元之間使用^字元,例如正規表示式[^269a-z] 將匹配除了2、6、9和所有大寫字母之外的任何字元。)
\< \> (匹配詞(word)的開始(\<)和結束(\>)。例如正規表示式\]*>.*?|<.*? /> (也僅僅能匹配部分)
匹配首尾空白字元的正規表示式:^\s*|\s*$
匹配帳號是否合法(字母開頭,允許5-16位元組,允許字母數字下劃線):^[a-za-z][a-za-z0-9_]$
匹配國內**號碼:\d-\d|\d-\d
匹配身份證:\d|\d
匹配特定數字:
^[1-9]\d*$ //匹配正整數
^-[1-9]\d*$ //匹配負整數
^-?[1-9]\d*$ //匹配整數
^[1-9]\d*|0$ //匹配非負整數(正整數 + 0)
^-[1-9]\d*|0$ //匹配非正整數(負整數 + 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)$ //匹配浮點數
^[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)
匹配特定字串:
^[a-za-z]+$ //匹配由26個英文本母組成的字串
^[a-z]+$ //匹配由26個英文本母的大寫組成的字串
^[a-z]+$ //匹配由26個英文本母的小寫組成的字串
^[a-za-z0-9]+$ //匹配由數字和26個英文本母組成的字串
^\w+$ //匹配由數字、26個英文本母或者下劃線組成的字串
測試方法:
string mailurl = "^[1-9]\\d*tiny_mce_markerquot;;
system.out.println(pattern.matches(mailurl, "1213"));
收藏常用正規表示式
d 非負整數 正整數 0 0 9 1 9 0 9 正整數 d 0 非正整數 負整數 0 0 9 1 9 0 9 負整數 d 整數 d d 非負浮點數 正浮點數 0 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 非正浮點數 負浮點數 ...
最全常用正規表示式 收藏
很多不太懂正則的朋友,在遇到需要用正則校驗資料時,往往是在網上去找很久,結果找來的還是不很符合要求。所以我最近把開發中常用的一些正規表示式整理了一下,在這裡分享一下。給自己留個底,也給朋友們做個參考。數字 0 9 n位的數字 d 至少n位的數字 d m n位的數字 d 零和非零開頭的數字 0 1 9...
正規表示式收藏
日期的驗證表示式 a.以下正確的輸入格式 2004 2 29 2004 02 29 10 29 39 pm 2004 12 31 d 02468 048 13579 26 s 0?13578 1 02 s 0?1 9 1 2 0 9 3 01 0?469 11 s 0?1 9 1 2 0 9 30 ...