首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

java 正则表达式分组解决办法

2012-06-16 
java 正则表达式分组进入正题:现在又这样一个字符串String ddksua001sdfa002如何使用正则表达式分

java 正则表达式分组
进入正题:现在又这样一个字符串
  String dd="ksu<a001>sdf<a002>"
  如何使用正则表达式分组成这样:
  kus
  <a001>
  sdf
  <a002>
  如果 dd="dd<a001>dsdf<sdf"
  就要分成这样
  dd
  <a001>
  dsdf<sdf
  如果 dd="dsdf<dsfsaf<a001>"
  :dsdf<dsfsaf
   


请求高手帮忙啊不用正则表达式也可以,只要弄出来

[解决办法]

Java code
    public static void main(String[] args) {        String[] ss = { "ksu<a001>sdf<a002>", "dd<a001>dsdf<sdf",                "dsdf<dsfsaf<a001>","sdfadf<<a001>sdfsf<>sdfdfa<sdfasdfadf>>sdiep>" };        String s1 = "(<\\w{0,}>)";        Pattern p = Pattern.compile(s1);        for (String s : ss) {            System.out.println("==========");            //找到<>,<a001>格式的字符串            Matcher m = p.matcher(s);            int point = 0;            while (m.find()) {                int start = m.start();                int end = m.end();                                if (point == start)                {                    System.out.println();                }                else                {                    System.out.println(s.substring(point,start));                }                System.out.println(m.group());                point = end;            }            if (point != s.length())            {                System.out.println(s.substring(point,s.length()));            }        }    } 

热点排行