黑马程序员技术交流社区

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

作者: shen7518    时间: 2014-7-18 14:23
标题: 正则表达式问题
本帖最后由 shen7518 于 2014-7-20 15:14 编辑

在密码输入的正则表达式验证时,必须有特殊符号(!@#¥#%。。。),但不限制出现的位置,其他是字母或数字,怎么写?
作者: icris    时间: 2014-7-18 14:42
  1. string.matches(".*[^a-zA-Z0-9].*")
复制代码

假设不会有回车,密码输入框的回车应该会有动作吧

作者: shen7518    时间: 2014-7-18 14:52
icris 发表于 2014-7-18 14:42
假设不会有回车,密码输入框的回车应该会有动作吧

不包括非打印字符,这样是可行的,我想做的是要有七位以上的验证,该怎么办呢?
作者: icris    时间: 2014-7-18 14:56
shen7518 发表于 2014-7-18 14:52
不包括非打印字符,这样是可行的,我想做的是要有七位以上的验证,该怎么办呢? ...
  1. string.length() >= 7 && string.matches(".*[^a-zA-Z0-9].*")
复制代码

作者: shen7518    时间: 2014-7-18 14:59
icris 发表于 2014-7-18 14:56

可以只在正则表达式里写吗?。
作者: icris    时间: 2014-7-18 15:16
shen7518 发表于 2014-7-18 14:59
可以只在正则表达式里写吗?。
  1. boolean b = string.matches("(?=.*[^a-zA-Z0-9].*).{7,}");
复制代码

看起来好奇怪…

作者: shen7518    时间: 2014-7-18 15:35
icris 发表于 2014-7-18 15:16
看起来好奇怪…

虽然有点奇怪,但很有效,就是这样的,十分感谢!
作者: 362688114    时间: 2014-7-21 10:47
楼主,视频里有关于正则表达式的内容吗?我怎么不知道啊。。。




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