javascript 字符串分割 ,怎么匹配正则分割?

黑帽子 发布于 2016/11/19 11:24
阅读 1K+
收藏 0
#飲料
冰紅茶 5

果粒橙 5

#小吃
面包 5
汤粉 5


现在我要做一个批量导入,#后面是分类,下面是商品,如果我要使用javascript正则表达式来分割不同分类下的商品和分类名称,这个该怎么写?如果仅仅使用#来分割,商品名称有#字符是不行的。

加载中
0
A
AboLI
给出分割前字符串模板,你这样不能判断的,是有换行呢,还是没有换行,类别之间有衔接字符呢?,还是没有,你给的信息完全看不出来,就算给你一个组好的正则表达式也不一定适用你的结构
黑帽子
黑帽子
模板就是上面那个,#后面是分类,换行后是商品,多个商品就继续换行。。这个模板是在textarea输入的
0
月生无界
月生无界
//获取分类里面的内容
    	String str = "#飲料\n 冰紅茶 5\n 果粒橙 5\n#小吃\n 面包 5\n 汤粉 5\n";
    	String regex = "#(\\D+)\n";
        String result[] = str.split(regex);  
        for(String s:result) {
            System.out.println("分类:\n"+s);  
        }
        
        //获取分类
        Pattern p = Pattern.compile(regex);//设定匹配规则为取出字符串中的字母 
        Matcher m = p.matcher(str);//与字符串匹配 
        while(m.find()){    
        	System.out.println("分类名:"+m.group());    
       }



首先确认你的分类名里面不会出现数字,只有在具体类目下的某个商品才会有数字,那么根据#与换行符/n,可以做字符串分割,前提是你的所有分本分类都符合“#xx分类/n”这样的格式
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部