java 正则表达式用法(2)
2013-12-05 16:16
253 查看
查找一段短文中的单词、汉字、数字的个数:
import java.util.*; import java.util.regex.*; public class RegexDemo2 { public static ArrayList<String> getMatchList(String reg, String input){ ArrayList<String> list = new ArrayList<String>(); Pattern p = Pattern.compile(reg, Pattern.CASE_INSENSITIVE); Matcher m = p.matcher(input); while(m.find()){ list.add(m.group()); } return list; } public static void printList(ArrayList<String> list, String message){ for(String s : list) System.out.println(s); System.out.println("共有" + message + "个数:" + list.size()); } public static void main(String arg[]) { String input = "Do one thing at a time, and do well. 一次只做一件事,并做到最好。x1,1y,2013,2014"; String regEng = "\\b[a-z]+\\b"; String regCn = "[\u4e00-\u9fa5]"; String regNum = "\\b\\d+\\b"; int eng = 0, cn = 0, num = 0; ArrayList<String> listEng = getMatchList(regEng, input); printList(listEng, "单词"); ArrayList<String> listCn = getMatchList(regCn, input); printList(listCn, "汉字"); ArrayList<String> listNum = getMatchList(regNum, input); printList(listNum, "数字"); } } /* Do one thing at a time and do well 共有单词个数:9 一 次 只 做 一 件 事 并 做 到 最 好 共有汉字个数:12 2013 2014 共有数字个数:2 */
相关文章推荐
- JAVA正则表达式高级用法(分组与捕获)
- Java正则表达式Pattern类的用法
- Java正则表达式--Matcher.group函数的用法
- Java学习笔记—正则表达式的用法
- java 正则表达式用法(3)
- JAVA正则表达式高级用法(分组与捕获)
- java语言正则表达式的用法
- Java学习笔记之Pattern类的用法详解(正则表达式)
- Java学习笔记之Pattern类的用法详解(正则表达式)
- java中正则表达式的用法
- java中正则表达式的一般用法
- Java正则表达式组group()的用法
- java正则表达式的基本用法
- java正则表达式的基本用法
- JAVA 正则表达式用法
- java正则表达式用法
- 学习JAVA正则表达式基本用法
- Java学习笔记之Pattern类的用法详解(正则表达式)
- Java正则表达式的用法
- Java正则表达式用法