求一个JAVA正则表达式:[要是是7个数字,但是其中必须有8这个数字存在]

keanu196492 2016-07-12 11:18:30
RTRT,比如:
1118111成立,1114111就不成立。
我写了个一个这个
"[\\d*4+\\d*]{7}"
不好使。
...全文
211 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
penglan_ 2016-07-12
  • 打赏
  • 举报
回复
非要用正则,可以写7个用或者连接: 8\\d{6}|\\d8\\d{5} 等
keanu196492 2016-07-12
  • 打赏
  • 举报
回复
引用 4 楼 soton_dolphin 的回复:
[quote=引用 2 楼 penglan_ 的回复:] \\d{3}8\\d{3}
8 不一定是在中间[/quote] 是的。
soton_dolphin 2016-07-12
  • 打赏
  • 举报
回复
引用 2 楼 penglan_ 的回复:
\\d{3}8\\d{3}
8 不一定是在中间
soton_dolphin 2016-07-12
  • 打赏
  • 举报
回复
非要用正则吗?用string.lenth() 和 indexOf 不是更简单?
penglan_ 2016-07-12
  • 打赏
  • 举报
回复
\\d{3}8\\d{3}
penglan_ 2016-07-12
  • 打赏
  • 举报
回复
\\d{3}4\\d{3}
自由自在_Yu 2016-07-12
  • 打赏
  • 举报
回复
引用 7 楼 rickylin86 的回复:

public class Test{
	public static void main(String[] args){
		String regex = "^(?=.*?8)\\d{7}$";
		String content = "1114111";
		System.out.println(content.matches(regex));
	}
}
rickylin86 2016-07-12
  • 打赏
  • 举报
回复

public class Test{
	public static void main(String[] args){
		String regex = "^(?=.*?8)\\d{7}$";
		String content = "1114111";
		System.out.println(content.matches(regex));
	}
}

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧