charAt
子字串的StringTokenizer
类,读取字母或符号以便处理文本。这经常导致复杂或凌乱的代码。 现在不一样了。
2平台标准版(J2SETM)1.4版包含一个名 为java.util.regex
的新软件包,使得使用正则表达式成为可能。 目前的功能包括元字符的使用,它赋予正则表达式极大的灵活性
本文概括地介绍了正则表达式的使用,并具体解释如何利用 java.util.regex
软件包来使用正则表达式,用以下常见情形作为 例子:
为了编译这些例子中的代码和在应用程序中使用正则表达式,需要安装 J2SE 1.4版。
构造正则表达式
正则表达式是一种字符模式,它描述的是一组字符串。你可以使用 java.util.regex
软件包,查找、显示或修改输入序列中出现的 某个模式的一部分或全部。
正则表达式最简单的形式是一个精确的字符串,比如“Java”或 “PRogramming”。正则表达式匹配还答应你检查一个字符串是否符合某个具体的 句法形式,比如是不是一个电子邮件地址。
为了编写正则表达式,普通字符和非凡字符都要使用:
/$^.*+?['']/.
正则表达式中出现的任何其他字符都是普通字符,除非它前面有个 /
。
非凡字符有着非凡的用处。例如,.可匹配除了换行符之外的任意字符。与 s.n
这样的正则表达式匹配的是任何三个字符的、以s
开始以n
结束的字符串,包括sun
和son
。
在正则表达式中有许多非凡字符,可以查找一行开头的单词,忽略大小写或 大小写敏感的单词,还有非凡字符可以给出一个范围,比如a-e
表 示从a
到e
的任何字母。
使用这个新软件包的正则表达式用法与Perl类似,所以假如你熟悉Perl中正则 表达式的使用,就可以在Java语言中使用同样的表达式语法。假如你不熟悉正则 表达式,下面是一些入门的例子:
//
反斜线字符/0
n八进制值的字符0
n (0 <=
n <=
7)/0
nn八进制值的字符 0
nn (0 <=
n <=
7)/0
mnn八进制值的字符0mnn 0
mnn (0 <=
m <=
3, 0 <=
n <=
7)/x
hh十六进制值的字符0x
hh/u
hhhh十六进制值的字符0x
hhhh/t
制表符('/u0009'
)/n
换行符 ('/u000A'
)/r
回车符 ('/u000D'
)/f
新闻热点
疑难解答