当前位置: 代码迷 >> Java Web开发 >> 急懂得或用过正则表达式的看过来,求指教
  详细解决方案

急懂得或用过正则表达式的看过来,求指教

热度:68   发布时间:2016-04-13 22:35:33.0
急急急!了解或用过正则表达式的看过来,求指教
鄙人想用正则模糊匹配word文档中部分内容,我想要获取【编制单位~人民币】这段范围内中的“xxxxxx表”,我写的表达式有:"编.*司[\\n\\r]*(.*表).*日[\\n\\r]*(单.*币)",但是只匹配到下面内容的第二个,其他都没匹配到,求指教!公司名和表名就用xxx来代替了。
下面是读取的word内容在控制台的显示:
1、
编制单位: aaaaaaaa公司

aaaaaaa表 2014 年 12 月 31 日




单位:元币种:人民币
2、
编制单位:bbbbbbbbbb公司
bbbbbbbb表 2014 年 12 月 31 日



单位:元币种:人民币
3、
cccccccc表 2014 年 1—12 月


单位:元币种:人民币
4、
ddddddddd表 2014 年 1—12 月


单位:元币种:人民币
------解决思路----------------------
你把换行替换成个固定的不就好了。
------解决思路----------------------
自己在改改。
	String s="1、\r\n编制单位: aaaaaaaa公司\r\naaaaaaa表 2014 年 12 月 31 日\r\n单位:元币种:人民币\r\n2、\r\n编制单位:bbbbbbbbbb公司\r\nbbbbbbbb表 2014 年 12 月 31 日\r\n单位:元币种:人民币 ".replaceAll("\\r\\n", "~");
       System.err.println(s);
Matcher m=Pattern.compile("编制单位.*?~(.*?表).").matcher(s);
        while(m.find())
            System.out.println(m.group(1));

你这个规则不好匹配。