Java单双斜杠使用区别及图文解析是怎样的?
- 内容介绍
- 相关推荐
本文共计599个文字,预计阅读时间需要3分钟。
Java的正则表达式与其他正则表达式不同,在一般的正则表达式中,我们会看到一些特殊字符,例如`\d`、`\t`、`\D`等,这些字符用来匹配字符串中的特定字符。例如,我们可以使用`Pattern`类的`matches`方法来匹配字符串:
javaString text=Hello World!;String pattern=\\d+; // 匹配一个或多个数字boolean matches=Pattern.matches(pattern, text);System.out.println(matches); // 输出:false
java的正则表达式和其他的正则表达式不同,在一般的正则表达式中,我们会看到一些诸如\d,\t,\D等字符,这些字符是用来匹配字符串的,比如我们可以用Pattern类的matches方法来匹配:
可见,regex是正则表达式,input是输入的字符串,输出的结果为true:
注意到我们输入的正则表达式中出现了\\d字符,这个字符就表示正则表达式中的\d,意思是匹配0-9的数字。
但是当我们改成\d时,出现了静态检查错误:
检查表示出现了非法的转义字符。原来java把\d当成了一个转义字符,而不是正则表达式的字符!
所以当字符串中出现了单斜杠加一个字符时,表示为转义字符,如\n,\t等等。而当我们要用java的正则表达式中的字符时,要使用到诸如\d,\D,\B等字符,必须用双斜杠。
在其他语言中,\\ 表示:我想要在正则表达式中插入一个普通的(字面上的)反斜杠,请不要给它任何特殊的意义。
本文共计599个文字,预计阅读时间需要3分钟。
Java的正则表达式与其他正则表达式不同,在一般的正则表达式中,我们会看到一些特殊字符,例如`\d`、`\t`、`\D`等,这些字符用来匹配字符串中的特定字符。例如,我们可以使用`Pattern`类的`matches`方法来匹配字符串:
javaString text=Hello World!;String pattern=\\d+; // 匹配一个或多个数字boolean matches=Pattern.matches(pattern, text);System.out.println(matches); // 输出:false
java的正则表达式和其他的正则表达式不同,在一般的正则表达式中,我们会看到一些诸如\d,\t,\D等字符,这些字符是用来匹配字符串的,比如我们可以用Pattern类的matches方法来匹配:
可见,regex是正则表达式,input是输入的字符串,输出的结果为true:
注意到我们输入的正则表达式中出现了\\d字符,这个字符就表示正则表达式中的\d,意思是匹配0-9的数字。
但是当我们改成\d时,出现了静态检查错误:
检查表示出现了非法的转义字符。原来java把\d当成了一个转义字符,而不是正则表达式的字符!
所以当字符串中出现了单斜杠加一个字符时,表示为转义字符,如\n,\t等等。而当我们要用java的正则表达式中的字符时,要使用到诸如\d,\D,\B等字符,必须用双斜杠。
在其他语言中,\\ 表示:我想要在正则表达式中插入一个普通的(字面上的)反斜杠,请不要给它任何特殊的意义。

