正则表达式简单使用说明

[table]
|正则表达式简单使用说明|
[/table]
TongWeb5.0管理控制台虚拟主机中的"远程过滤"部分四个配置项的值设置形式都为正则表达式,这里简单介绍一下正则表达式表示形式(详细说明可参考JDK API中java.util.regex.Pattern类的文档说明或正则表达式规范):

[b]预定义字符类:[/b]
.    任何单个字符(与行结束符可能匹配也可能不匹配)
\d 数字:[0-9]
\D 非数字: [^0-9]
\s 空白字符:[ \t\n\x0B\f\r]
\S 非空白字符:[^\s]
\w 单词字符:[a-zA-Z_0-9]
\W 非单词字符:[^\w]
\ 转义字符,如表示{需写出\{


[b]字符类:[/b]
[abc]           a、b 或 c(简单类)
[^abc] 任何字符,除了 a、b 或 c(否定)
[a-zA-Z] a到z或A到 Z,两头的字母包括在内(范围)
[a-d[m-p]] a到d或m到 p,也可表示成[a-dm-p](并集)
[a-z&&[def]] d、e 或 f(交集)
[a-z&&[^bc]] a到z,除了b和c,也可表示成[ad-z](减去)
[a-z&&[^m-p]] a到z,除了m到p,也可表示成[a-lq-z](减去)


[b]贪婪匹配数量词:[/b]
X?       0个或一个X
X* 0个或多个X
X+ 1个或多个X
X{n} 恰好n个X
X{n,} 至少n个X
X{n,m} 至少n个X,但不超过m个,即n<=X<=m


[b]惰性匹配数量词:[/b]
X??          一个X或一个也没有
X*? 0个或多个X
X+? 1个或多个X
X{n}? 恰好n个X
X{n,}? 至少n个X
X{n,m}? 至少n个X,但不超过m个,即n<=X<=m

贪婪匹配:匹配尽可能多的字符
惰性匹配:匹配尽可能少的字符
举例说明:字符串
Tom is a <b>junior</b> developer <b>living</b> in <b>beijing</c>.
则贪婪匹配"<b>.*</b>"的结果是"<b>junior</b> developer <b>living</b>",惰性匹配"<b>.*?</b>"的结果 是"<b>junior</b>"和"<b>living</b>"

[b]运算符:[/b]
XY           X后面紧跟着Y
X|Y X或Y
(X) X作为捕获组

举例说明:
1.配置一个以168.1开头的任意远程地址为:
168\.1\.\d\{1,2\}|1\d\d|2[0-4]\d|25[0-5]\.\d\{1,2\}|1\d\d|2[0-4]\d|25[0-5]
如果不要求这么精准也可表示成:
168\.1\.\d\{1,3\}\.\d\{1,3\}
2.配置一个以TW开头的任意远程主机为:TW.* 。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值