[b]查詢:[/b]
string str="ab cde fg abcdefg";
string regex="a|f"; //表示a或f
pattern p=pattern.compile(regex);
matcher m=p.matcher(str);
boolean rs=m.find();
如果str中有regex,那麼rs為true,否則為flase。如果想在查詢時忽略大小寫,則可以寫成:
pattern p=pattern.compile(regex,pattern.case_insensitive);
[b]提取:[/b]
string regex=".+\\\\(.+)$";
string str="c:\\dir1\\dir2\\name.txt";
pattern p=pattern.compile(regex);
matcher m=p.matcher(str);
boolean rs=m.find();
for(int i=1;i<=m.groupcount();i++)
以上的執行結果為name.txt,提取的字串儲存在m.group(i)中,其中i最大值為m.groupcount();
[b]分割:[/b]
string regex="::";
pattern p=pattern.compile(regex);
string r=p.split("xd::abc::cde");
執行後,r就是,其實分割時還有跟簡單的方法:
string str="xd::abc::cde";
string r=str.split("::");
[b]替換(刪除):[/b]
string regex="a+"; //表示乙個或多個a
pattern p=pattern.compile(regex);
matcher m=p.matcher("aaa bbb ccc bbb aaa");
string s=m.replaceall("a");
結果為"a bbb ccc bbb a"
如果寫成空串,既可達到刪除的功能,比如:
string s=m.replaceall("");
結果為" bbb ccc bbb "
[b]附:[/b]
\d 等於 [0-9] 數字
\d 等於 [^0-9] 非數字
\s 等於 [ \t\n\x0b\f\r] 空白字元
\s 等於 [^ \t\n\x0b\f\r] 非空白字元
\w 等於 [a-za-z_0-9] 數字或是英文本
\w 等於 [^a-za-z_0-9] 非數字與英文本
^ 表示每行的開頭
$ 表示每行的結尾
JAVA正規表示式4種常用功能
正規表示式在字串處理上有著強大的功能,sun在jdk1.4加入了對它的支援 下面簡單的說下它的4種常用功能 查詢 string str abc efg abc string regex a f 表示a或f pattern p pattern.compile regex matcher m p.mat...
JAVA正規表示式4種常用功能
正則 表示式在字串處理上有著強大的功能,sun在jdk1.4加入了對它的支援 下面簡單的說下它的4種常用功能 查詢 string str abc efg abc string regex a f 表示a或f pattern p pattern.compile regex matcher m p.ma...
JAVA正規表示式4種常用功能
f 作者 閱讀 3408 人次 2006 4 28 10 05 00 正規表示式在字串處理上有著強大的功能,sun在jdk1.4加入了對它的支援 下面簡單的說下它的4種常用功能 查詢 string str abc efg abc string regex a f 表示a或f pattern p pa...