常用正则表达式收集
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或程序里不需要/

浙公网安备 33010602011771号