84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
写程序遇到点问题,发现是不清楚java中反斜线的处理。在《java编程思想》中,java中的\\表示“我要插入一个正则表达式的反斜线,所以其后的字符具有特殊的意义。”如果想插入一个普通的反斜线,那么应该使用\\\\。感觉很费解啊。为什么是这样的,这四个反斜线中每个反斜线的含义是什么?
\\
\\\\
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
我们使用的反斜杠,就是一个\
\
但是在java等编程语言中,我们需要使用转义:一个文艺反斜杠\\表示一个普通反斜杠\
正则表达式中,反斜杠也需要转义,即\\表示匹配一个\,然后蛋疼的事儿就来了,当你在 java中写\\时,其实正则表达式引擎只接受到了一个\,所以,如果你想让正则表达式引擎接受两个反斜杠,那么这两个斜杠都得转义。
于是,正则表达式匹配一个\是,应该写\\
这时,第一个\在 java 字符串中写为\\
第二个\在 java 字符串中写为\\
于是,你就看到了java中无比蛋疼的\\\\
蛋疼
普通反斜杠
我们使用的反斜杠,就是一个
\
文艺反斜杠
但是在java等编程语言中,我们需要使用转义:一个文艺反斜杠
\\
表示一个普通反斜杠\
二逼反斜杠
正则表达式中,反斜杠也需要转义,即
\\
表示匹配一个\
,然后蛋疼的事儿就来了,当你在 java中写\\
时,其实正则表达式引擎只接受到了一个\
,所以,如果你想让正则表达式引擎接受两个反斜杠,那么这两个斜杠都得转义。于是,正则表达式匹配一个
\
是,应该写\\
这时,第一个
\
在 java 字符串中写为\\
第二个
\
在 java 字符串中写为\\
于是,你就看到了java中无比蛋疼的
\\\\