本文是基于上一篇博文【java文本处理】正则表达懒惰匹配 — 统计文档中对话段数,并匹配出人物对话内容写入新文档作的修正。
01. 需解决的问题
上一篇博文中的问题:
匹配一段对话,< \“ >是指从出现的引号开始匹配,以<\,”>或<\。”>或 <\!”> 或 <\?”> 或 <\……”> 作为结束符号,因而容易出现多余匹配的问题。举之前的例子来说明此问题:
/* * 实现:正则表达式匹配字符串中对话内容* @author WTCLAB_yd**/import java.util.regex.Pattern;//导入Pattern类import java.util.regex.Matcher;//导入Matcher类public class test {public static void main(String[] args){String str=" “小耳朵”说:“春天到了!” 妈妈笑着说:“是呀。”" ; //自定义一段字符串System.out.println("---原字符串内容:---\n\n"+str);//在控制台上打印出字符串的内容int count=0;//计数器,用于累计字符串中出现的对话数Pattern p
【java文本处理】正则表达之规定开始 结束字符且之间不含指定字符 --- 匹配字符串中的人物对话内容(修正版)