/** |
* String类也可以根据正则表达式操作字符串。 包括字符串匹配、替换和分割 |
*/ |
public static void testRegex() { |
String str = "aab aaa bb ab" ; |
// 该正则表达式表示包含任意多个英文字母或者空格。 |
String pattern1 = "^[a-zA-Z| ]*$" ; |
System.out.println( "用正则表达式匹配成功? " + str.matches(pattern1)); |
// 替换, 将字符串中的所有连续空格替换成一个空格 |
System.out.println(str.replaceAll( "\\s{2,}" , " " )); |
// 将字符串中第一个连续的空格替换成一个空格 |
System.out.println(str.replaceFirst( "\\s{2,}" , " " )); |
// 分割字符串,按空格分割,多个连续的空格当作一个空格 |
String[] ss = str.split( "\\s{1,}" ); |
System.out.println( "用正则表达式按空格分割:" ); |
for ( int i = 0 ; i < ss.length; i++) { |
System.out.println(ss[i]); |
} |
// 限制分割后的数组的大小 |
System.out.println( "用正则表达式按空格分割,指定最大分割段数为3:" ); |
ss = str.split( "\\s{1,}" , 3 ); |
for ( int i = 0 ; i < ss.length; i++) { |
System.out.println(ss[i]); |
} |
} |