日期:2014-05-20  浏览次数:20601 次

Java 字符串匹配问题
在java类中用   Pattern   和Matcher   来检测字符串是不是满足(字母数字)(特殊符号)(字母数字)(特殊符号)结束符这样的格式.(特殊字符可以是/|?,结束符可以是$#)   请教满足可以检测是否匹配的正则表达式!

------解决方案--------------------
String strRegex = "^\\/project\\/module1\\/\\S$ "; //匹配是否满足这样的表达式/project/module1/*,*为任意东西
Pattern p = Pattern.compile(strRegex);
Matcher m = p.matcher(str); //str待检测的字符串
if(m.find()){
//...
}
\\表示输出一个\,对于转义字符应该这样:\转义字符
或者直接
if(str.matches(strRegex)){
//
}
------解决方案--------------------
String reg = "(\\w+)=(\\w+) ";
Pattern p = Pattern.compile(reg);
Matcher m = p.matcher( "test=test/test2=test2/rr=11/$ ");
Map map = new HashMap();
while (m.find()){
map.put(m.group(1), m.group(2));
}

你自己改改看吧……
------解决方案--------------------
String reg = "(\\w+[^\\w]+)+ ";