站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题请教一个正则表达式

请教一个正则表达式

摘要: 请教一个正则表达式


我有一个这样的字符串:
{aaaa}{1122bbbb}{cccddd}...

即由大括号包起来的一个或几个字符串的集合。
请问我怎么能用正则表达式把它一组组的分离出来呢?

要这样的结果:
group(1) = -#34;aaaa-#34;;
group(2) = -#34;1122bbbb-#34;;
group(3) = -#34;cccddd-#34;;
...

多谢各位了!



头和尾先去掉“{”和“}”,然后split(-#34;/}/{-#34;) 就可以拉


String a = -#34;//{[0-9a-zA-Z]*//}-#34;;


正则表达式嘛,不懂太多,帮顶。


String str=-#34;{aaaa}{1122bbbb}{cccddd}-#34;;
str=str.replaceAll(-#34;//{([^//{//}]+)//}-#34;,-#34;$1@@@-#34;);
String s[]=str.split(-#34;@@@-#34;);
for(int i=0;i-#60;s.length;i++){
System.out.println(s[i]);
}


或者:
String str=-#34;{aaaa}{1122bbbb}{cccddd}-#34;;
// str=str.replaceAll(-#34;//{([^//{//}]+)//}-#34;,-#34;$1@@@-#34;);
str=str.substring(1,str.length()-1);
String s[]=str.split(-#34;//}//{-#34;);
for(int i=0;i-#60;s.length;i++){
System.out.println(s[i]);
}


谢谢各位了,马上试试看~~



String a = -#34;//{//w+//}-#34;;

String b = -#34;{ada}-{asd3asd}-{asdasd}-#34;;
Pattern p = Pattern.compile(a);

Matcher m = p.matcher(b);

while (m.find()) {
String r = b.substring(m.start() + 1, m.end() - 1);
System.out.println(r);
}


一试验就出结果了,呵呵。


来晚了,方法很多啊,呵呵。

搞定,谢谢各位了


↑返回目录
前一篇: 【ANT问题】高手请指教
后一篇: 关于JAVA程序问题