正则表达式

在软件开发和一些应用程序使用中正则表达式具有广泛的用途。虽然在有些应用中正则表达式形式可能有异,但是大部分还是相同的,至少思想相同。

下面摘抄了几种简单的正则表达式。

 

1句号”.”表示任何字符。如reg=”t.n”它匹配“tan”“ten”“tin”“ton”,还匹配“t#n”“tpn”甚至“t n”。但是“.”只表示一个字符,“tten”就不能匹配reg了。如果reg=t.*n”则能匹配“tn”,ttten”。表示tn之间有0个或多个字符。

2 方括号句号“.”的表达范围太大,因此有了[],来限定是哪一些字符。方括号内的字符值取一个,如[aeio],reg=t[aeio]n”匹配tanten等,但是不能匹配taan。当然可以加“*”来表示取方括号中的多个字符。
3
“或”符号(a|e|i|oo)”表示或的意思,这样就可以匹配“toon”。注意这里必须是圆括号。

4表示匹配次数的符号

表一显示了表示匹配次数的符号,这些符号用来确定紧靠该符号左边的符号出现的次数: *,?,+{n}{m,n}

如果字符串中间出现特殊字符,我们又想在表达式中原样表示,那么就要用到转移字符“\.如我们要查找99*99的字符串,那么它的正则表达式reg = “\d{2}\*\d{2}”,在正则表达式中“*”就不再表示0次或多次的意思了。而就表示“*”本身。同样“{”在正则表达式中也有特殊的意义,只要我们有“\{”来表示,则“{”就表示其本身。

5 ^符号

^”放在正则表达式的开头,表示要查找的字符串是以某个字符串开头的字符串。而“^”放在方括号内部,[^a]则表示该处不能是字符a"ab[^c]de":表示字符串ab#de字符串中间不能是字符c

6.Java中不以XXX结尾的字符串的正则表达式:

.*(?<!(ems\.u3\.command\.import$))   //主要是(?<!XXX$)的形式。

当这个表达式放在plugin.xml中时,小于号<,表达为&lt;

所以是:.*(?&lt;!(ems\.u3\.command\.import$))

 

你可能感兴趣的:(正则表达式)