码迷,mamicode.com
首页 > 编程语言 > 详细

java转义符和正则表达式转义符

时间:2017-08-13 11:08:51      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:表达   pil   表达式   print   编译   转义   印象   block   字符串   

举例来说,连续相同的3位数字的正则表达式的标准语法是:

([\d])\1{2}

但是如果在java代码中这么写,就会出现语法错误,如下:

String regEx = "([\d])\1{2}";

考虑到\符号在java字符串的语法中属于转义符,所以,需要的java的语法是:

String regEx = "([\\d])\\1{2}";

为了加深印象,再来看下一个例子:前面连续相同的3位数字,后面连续相同的三位字符的正则表达式的标准语法是:

(\d)\1{2}(.)\2{2}

而在java中,是这么写的:

String regEx = "(\\d)\\1{2}(.)\\2{2}";

注意,\1和\2指的是patten的位置。

最后给出整段测试代码:

@Test
public void test02(){
    // 要验证的字符串
    String str = "111";
    // 正则表达式规则
    String regEx = "([\\d])\\1{2}";
    //String regEx = "([\d])\1{2}";
    // 编译正则表达式
    Pattern pattern = Pattern.compile(regEx);
    // 忽略大小写的写法
    // Pattern pat = Pattern.compile(regEx, Pattern.CASE_INSENSITIVE);
    Matcher matcher = pattern.matcher(str);
    // 查找字符串中是否有匹配正则表达式的字符/字符串
    boolean rs = matcher.find();
    System.out.println(rs);
}

java转义符和正则表达式转义符

标签:表达   pil   表达式   print   编译   转义   印象   block   字符串   

原文地址:http://www.cnblogs.com/luminji/p/7352589.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!