黑马程序员技术交流社区

标题: 匹配五个相同的数字 [打印本页]

作者: 饥渴ing    时间: 2014-6-4 13:01
标题: 匹配五个相同的数字
本帖最后由 饥渴ing 于 2014-6-5 18:35 编辑

(\\d)\\1{4}网上查了是这个可是看不懂,求大神指点下
作者: 我叫MT    时间: 2014-6-4 15:17
你想问什么?,没代码没实际问题,表示不知道你在问什么?只好挽尊
作者: 饥渴ing    时间: 2014-6-4 16:00
我叫MT 发表于 2014-6-4 15:17
你想问什么?,没代码没实际问题,表示不知道你在问什么?只好挽尊

正则中实现匹配5个相同的数字,那个规则我没能弄懂想请人帮忙解释下
作者: 我叫MT    时间: 2014-6-4 16:42
"(\\d){5}"           ( )把某个数字匹配为组,这个组出现5次,针对于整个字符串,把API多看看就能明目
作者: 我叫MT    时间: 2014-6-4 16:48
(\\d)\\1{4}他这个就是把第一个出现的数字作为组,并定义组编号,这个组还要再连续出现4次
作者: 马宁    时间: 2014-6-4 19:47
没看懂!
作者: 苗润    时间: 2014-6-4 21:10
本帖最后由 苗润 于 2014-6-4 21:12 编辑

(\\d)\\1{4}
第一个反斜杠是将第二个转译
\d代表的是数字:[0-9]
\1代表的是第二位要和第一位一样 例如第一个是2 那么第二个就得是2,要不就判断失败(这个是组的概念,什么预处理 白话文就是我前面说的差不多)
后面的那个{4} 意思就是包括前面的\1要出现4次 意思就是 后面的4个是一样的
例如你第一个数字是2 那么 如果匹配成功的话 就是 22222 五个2
这个是正则表达式
你打开java api 帮助文档 找到java.lang里面的String类,里面有个方法是matches 在那个方法后面你能看到 很显眼的正则表达式几个字,里面有详细的使用规则 你可以翻开看看,并且毕向东老师的视频里面25天有详细讲的
作者: 饥渴ing    时间: 2014-6-4 23:12
我叫MT 发表于 2014-6-4 16:42
"(\\d){5}"           ( )把某个数字匹配为组,这个组出现5次,针对于整个字符串,把API多看看就能明目 ...

晕,api没找到有关组的信息!能告诉我哪个相关的类中有描述正则的组啊.
作者: 我叫MT    时间: 2014-6-5 10:25
饥渴ing 发表于 2014-6-4 23:12
晕,api没找到有关组的信息!能告诉我哪个相关的类中有描述正则的组啊.

java.util.regex.Pattern




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