常用正则表达式收集

001:  

  匹配符号:
    \d:    从0~9的任一数字,例如\d\d可以匹配72,但不匹配aa或7a
    \D:    非数字字符,例如\D\D\D匹配abc,但不匹配123
    \w:    任一单词字符,如A-Z、a-z、0-9和下划线字符,例如\w\w匹配A_,但不匹配*%
    \W:    非单词字符,\W可以匹配@,但不匹配a
    \s:    任一空白字符,包括制表符,换行符,回车符,换页符和垂直制表符
    .:     任一字符,换行符除外
    [...]: 括号中的任一字符,例如[abc]匹配单个字符a、b、c,但不匹配其他字符,[a-z]匹配a~z的任一字符
    [^...]:非括号中的任一字符,[^abc]匹配a、b、c除外的任一字符,但可以匹配A、B和C
----------------------------------------------------------------------------------------------------
002:
    定位符号:
    ^:     其后的模式必须在字符串的开始处,如果是一个多行字符串,应位于任一行的开始。对于多行文本(
            包含回车符的字符串),需要设定Multiline标志。
    $:     前面的模式必须在字符串的末尾处,如果是一个多行字符串,因该在任一行的末尾。
    \A:    前面的模式必须在字符串的开始处,多行标志被忽略。
    \z:    前面的模式必须在字符串的末尾处,多行标志被忽略。
    \Z:    前面的模式必须位于字符串的末尾,或是位于换行符前。
    \b:    匹配一个单词边界,实质上是单词字符和非单词字符间的点。位于一个单词的开始。
    \B:    匹配一个非单词边界的位置,不在一个单词的开始。
----------------------------------------------------------------------------------------------------
003:
    指定重复字符:
    {n}:   匹配前面的字符n次,例如x{2}匹配xx,但不匹配x或xxx。
    {n,}:  匹配前面的字符n次或更多,例如x{2,}匹配2个或更多的x。
    {n,m}: 匹配前面的字符n次到m次之间。
    ?:     匹配前面的字符0次或1次,可以省略。
    +:     匹配前面的字符1次或多次。
    *:     匹配前面的字符0次或多次。
----------------------------------------------------------------------------------------------------
例:
    010-87654321匹配的模式:^\d{3,4}-\d{7,}$

    只能是数字且除零外的数字:^[1-9][0-9]{0,}
----------------------------------------------------------------------------------------------------
 

 

 

 

输入数字:  
  <input   type="text"   onkeyup="this.value=this.value.replace(/\D/g,'')"><br>  
  输入英文:  
  <input   type="text"   onkeyup="this.value=this.value.replace(/[^a-zA-Z]/g,'')">  
  输入中文:  
  <input   type="text"   onkeyup="this.value=this.value.replace(/[^\u4e00-\u9fa5]/g,'')">  

 

 

===============================

匹配包括换行符在内的任意字符:([\s\S]*) 同时,也可以用 “([\d\D]*)”、“([\w\W]*)” 来表示。

 

在文本文件里, 这个表达式可以匹配所有的英文
/[ -~]/
这个表达式可以匹配所有的非英文(比如中文)
/[^ -~]/
/是VI里用的. 你在editplus或程序里不需要/

posted @ 2009-03-18 18:14  .NET钉子户  阅读(218)  评论(0)    收藏  举报