黑马程序员技术交流社区

标题: 正则表达式问题 [打印本页]

作者: yangtaorun    时间: 2015-1-26 17:13
标题: 正则表达式问题
正则表达式 写规范的时候 我想写[0 - 9]的规范 \d为什么会出错?而是要写\\d ?
作者: mengxiang1993    时间: 2015-1-26 21:24
java的双\才表示一个,所以在java中应该表示为\\d
作者: yangtaorun    时间: 2015-1-26 22:31
mengxiang1993 发表于 2015-1-26 21:24
java的双\才表示一个,所以在java中应该表示为\\d

哦 就是说字符类下面的单\ 想用的时候都要用\\吗?
作者: yueye13    时间: 2015-1-26 23:20
\d是代表0-9,要用\转义一下才能代表,所以是\\d
作者: yangtaorun    时间: 2015-1-27 11:51
yueye13 发表于 2015-1-26 23:20
\d是代表0-9,要用\转义一下才能代表,所以是\\d

其他的也都是用两个\\表示吗?
作者: 边晓炎    时间: 2015-1-27 14:47
//第一个是转义符!
作者: 潇洒小哥    时间: 2015-1-27 15:37
首先“d”表示特殊字符而不是“d”,"\d"才转化成“d”,“\\d”才表示“\d”
作者: yangtaorun    时间: 2015-1-27 16:37
潇洒小哥 发表于 2015-1-27 15:37
首先“d”表示特殊字符而不是“d”,"\d"才转化成“d”,“\\d”才表示“\d”

这个是我听到最满意的答案了 谢谢你啦 那其他的都是要写\\才表示正常的意思吗?
作者: 潇洒小哥    时间: 2015-1-27 21:01
yangtaorun 发表于 2015-1-27 16:37
这个是我听到最满意的答案了 谢谢你啦 那其他的都是要写\\才表示正常的意思吗? ...

不好意思说错了:(,应该是这样:“\”在字符串里是转义字符会把后面的字符给转义掉,如果单写“\d”就会转义成其他东西,所以要这样写“\\d”,前面那个“\”把后面那个先转义成普通“\”
作者: yangtaorun    时间: 2015-1-27 21:37
潇洒小哥 发表于 2015-1-27 21:01
不好意思说错了,应该是这样:“\”在字符串里是转义字符会把后面的字符给转义掉,如果单写“\d”就会 ...

哦 那这样的话直接写d多好




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2