A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© shen7518 中级黑马   /  2014-7-18 14:23  /  1074 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 shen7518 于 2014-7-20 15:14 编辑

在密码输入的正则表达式验证时,必须有特殊符号(!@#¥#%。。。),但不限制出现的位置,其他是字母或数字,怎么写?

7 个回复

倒序浏览
  1. string.matches(".*[^a-zA-Z0-9].*")
复制代码

假设不会有回车,密码输入框的回车应该会有动作吧
回复 使用道具 举报
icris 发表于 2014-7-18 14:42
假设不会有回车,密码输入框的回车应该会有动作吧

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

可以只在正则表达式里写吗?。
回复 使用道具 举报
shen7518 发表于 2014-7-18 14:59
可以只在正则表达式里写吗?。
  1. boolean b = string.matches("(?=.*[^a-zA-Z0-9].*).{7,}");
复制代码

看起来好奇怪…
回复 使用道具 举报
icris 发表于 2014-7-18 15:16
看起来好奇怪…

虽然有点奇怪,但很有效,就是这样的,十分感谢!
回复 使用道具 举报
楼主,视频里有关于正则表达式的内容吗?我怎么不知道啊。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马