151建议四

57复杂字符串操作用正则表达式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//正则表达式对象
Pattern
pattern=Pattern.compile( "\\b\\w+\\b") ;
//生成匹配器
Matcher
matcher=pattern.matcher( str) ;
//记录单词数量
int wordsCount=0;
//遍历查找匹配, 统计单词数量
while( matcher.find( ) ) {
wordsCount++;
}S
ystem.out.println( str+"单词
数: "+wordsCount) ;
}

Java的正则表达式中“\b”表示的是一个单词的边界, 它是一个位置界定符, 一边为字符或数字, 另外一边则非字符或数字, 加上“\w”( 它表示的是字符或数字)

59字符串汉字的排序

Java推荐使用Collator类进行排序

1
2
3
4
5
6
7
String[]strs={"张三( Z) ", "李四
( L) ", "王五( W) "};
//定义一个中文排序器
Comparator
c=Collator.getInstance( Locale.CHINA) ;
//升序排列
Arrays.sort( strs, c) ;

如果需要严格排序,要使用一些开源项目来自己实现了, 比如pinyin4j可以把汉字转换为拼音