天天看點

Java Script 正規表達式的使用示例一、文法二、典型應用

+:規定其前導字元必須在目标對象中連續出現一次或多次。

*:規定其前導字元必須在目标對象中出現零次或連續多次。

?:規定其前導對象必須在目标對象中連續出現零次或一次。 

{n}比對确定的 n 次。

{n,}至少比對 n 次。

{n,m}n <= m,最少比對 n 次且最多比對 m 次。

\s:用于比對單個空格符,包括tab鍵和換行符;              

\S:用于比對除單個空格符之外的所有字元;                

\d:用于比對從0到9的數字;             

\w:用于比對字母,數字或下劃線字元;              

\W:用于比對所有與\w不比對的字元;              

. :用于比對除換行符之外的所有字元。 

^:定位符規定比對模式必須出現在目标字元串的開頭             

$:定位符規定比對模式必須出現在目标對象的結尾            

\b:定位符規定比對模式必須出現在目标字元串的開頭或結尾的兩個邊界之一             

\B:定位符則規定比對對象必須位于目标字元串的開頭和結尾兩個邊界之内,即比對對象既不能作為目标字元串的開頭,也不能作為目标字元串的結尾。

比對負整數的正規表達式:

        -[0-9]*[1-9][0-9]*

比對整數的正規表達式:

        -?\\d+

比對非負浮點數(正浮點數 + 0)的正規表達式:

        \\d+(\\.\\d+)?

比對正浮點數的正規表達式:

        (([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))  

比對非正浮點數(負浮點數 + 0)的正規表達式:

        ((-\\d+(\\.\\d+)?)|(0+(\\.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+)?

比對26個英文字母組成字元串的正規表達式:

        [A-Za-z]+

比對26個英文字母的大寫組成字元串的正規表達式:

        [A-Z]+

比對26個26個英文字母的小寫組成字元串的正規表達式:

        [a-z]+      

比對中文字元的正規表達式:

        [\u4e00-\u9fa5] 

比對中文字元數限制的正規表達式:

        [\u4e00-\u9fa5]{2,4}

比對下劃線和數字及字母的正規表達式:

        [\w+]{6,12}

比對中文字元及字母的正規表達式:

        [^\W\x00-\xff]{6,16}

比對雙位元組字元(包括漢字在内)表達式:

        [^\x00-\xff]

比對空行的正規表達式:

        \n[\s| ]*\r

比對HTML标記的正規表達式:

        /<(.*)>.*<\/\1>|<(.*) \/>/ 

比對首尾空格的正規表達式:

        (^\s*)|(\s*$)(像vbscript那樣的trim函數)

比對Email位址的正規表達式:

        \w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

比對網址URL的正規表達式:

        http://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?

比對手機号碼且以數字開頭的正規表達式:

        ((\(\d{3}\))|(\d{3}\-))?13\d{9}|15[89]\d{8} 或 [+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[]){1,12})+

比對普通電話、傳真号碼,可以“+”開頭,除數字外,可含有“-”的正規表達式:

        \d{3,4}-?\d{7,8}-?\d{0,1} 或  [+]{0,1}(\d){1,3}[]?([-]?((\d)|[]){1,12})+

比對特定形式數字及辨別(如60~80)的正規表達式:

        [1-9][0-9]?[0-9]?(~)[1-9][0-9]?[0-9]?

比對百分數的正規表達式:

        (100|([1-9]?[0-9]?))%

使用座機号碼(JS)範例:

        (/^\d{3,4}[-]d{7,8}[-]\d{0,1}$/.test(value))

沒有整理與歸納的知識,一文不值!高度概括與梳理的知識,才是自己真正的知識與技能。 永遠不要讓自己的自由、好奇、充滿創造力的想法被現實的架構所束縛,讓創造力自由成長吧! 多花時間,關心他(她)人,正如别人所關心你的。理想的騰飛與實作,沒有别人的支援與幫助,是萬萬不能的。

    本文轉自wenglabs部落格園部落格,原文連結:http://www.cnblogs.com/arxive/p/5928857.html,如需轉載請自行聯系原作者