点击打开链接--------android培训、java培训、期待与您交流!-----------
正则表达式:符合一定规则的表达式
查看java API:
matches
public boolean matches(String regex)
告知此字符串是否匹配给定的正则表达式。
调用此方法的 str.matches(regex) 形式与以下表达式产生的结果完全相同:
参数:
regex - 用来匹配此字符串的正则表达式
返回:
当且仅当此字符串匹配给定的正则表达式时,返回 true
常用表达式匹配字符:
正则表达式的切割:
split
public String[] split(String regex)
根据给定正则表达式的匹配拆分此字符串。
该方法的作用就像是使用给定的表达式和限制参数 0 来调用两参数 split 方法。因此,所得数组中不包括结尾空字符串。
例如,字符串 "boo:and:foo" 使用这些表达式可生成以下结果:
Regex | 结果 |
: | { "boo", "and", "foo" } |
o | { "b", "", ":and:f" } |
参数:
regex - 定界正则表达式
返回:
字符串数组,它是根据给定正则表达式的匹配拆分此字符串确定的
用组按照叠词完成切割示例:
public static void main(String[] args)
{
splitDemo(“qwezzidjvuhdd”,”(.)\\1”);//切割叠词
}
public static void splitDemo(String str,String reg)
{
String []arr=str.split(reg);
System.out.println(arr.length);
for(String s:arr)
{
System.out.println(s);
}
}
正则表达式的替换:
replaceAll
public String replaceAll(String regex,
String replacement)
使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串。
调用此方法的 str.replaceAll(regex, repl) 形式与以下表达式产生的结果完全相同:
Pattern.compile(regex).matcher(str).replaceAll(repl)
注意,在替代字符串中使用反斜杠 (\) 和美元符号 ($) 与将其视为字面值替代字符串所得的结果可能不同;请参阅 Matcher.replaceAll。如有需要,可使用 Matcher.quoteReplacement(java.lang.String) 取消这些字符的特殊含义。
参数:
regex - 用来匹配此字符串的正则表达式
replacement - 用来替换每个匹配项的字符串
返回:
所得 String
示例代码:
public static void main()
{
String str=”dfghj gkm32546cxvjnsdfbv”;
replaceAllDemo(str,”\\d{5,}”,”#”);//将连续的数字替换成#号
}
public static void replaceAllDemo(String str,String reg,String newStr)
{
str=str.replaceAll(reg,newStr);
System.out.println(str);
}