- 已 关闭 * * 。 此 问题 需要 更多 focused 。 当前 不 接受 答案 。
- 想要 改进 此 问题 吗 ? * * 更新 问题 , 使 其 仅 关注 editing this post 的 一 个 问题 。
昨天 关门 了 。
Improve this question 格式
我 不是 很 擅长 正则 表达式 , 我 试 过 使用 正则 表达式 生成 器/调试 器 , 但 我 似乎 不能 弄 清楚 。 基本 上 , 我 想 检查 并 确保 任何 给定 的 字符 串 具有 :
- 至少 两 个 数字 0 - 9 . 两者 ( 或 两者 以上 ) 可以 出现 在 字符 串 的 任何 地方 , 并且 两者 可以 相同 + 或 不同 , 只要 字符 串 中 至少 有 两 个 包含 。
- 至少 两 个 非 字母 数字 字符 ( ! , * , $, # , 键盘 上 除 字母 和 数字 之外 的 任何 字符 , 因为 这些 字符 需要 单独 检查 ) 。 两者 ( 或 两者 以上 ) 可以 出现 在 字符 串 中 的 任何 位置 , 并且 可以 是 相同 的 + 或 不同 的 , 只要 字符 串 中 至少 包含 两 个 字符 。
- 至少 一 个 大写 字母
- 至少 一 个 小写 字母
- 不能 包含 任何 空白 字符
- 不 应 在 字符 串 中 的 WHERE 上 区分 任何 给定 字符 , 只要 每个 TYPE 字符 至少 出现 两 次 。
我 似乎 找 不到 任何 在 互联 网 上 , 以 这个 确切 的 事情 。 而且 , 这 将 是 一 个 奖金 是 这 检查 , 以 确保 字符 串 是 至少 8 个 字符 长( 因为 这 是 用于 密码 验证 ) , 但 由于 更改 文本 框 颜色/错误/等 , 我 还是 要 手动 检查( 例如 , 少于 8 个 字符 的 密码 将 使 框 变为 红色 , 如果 大于 8 但 少于 16 个 字符 , 则 框 变为 黄色 ,基本 上 , 我 构建 了 一 个 两 步 验证 ( 表单 提交 之前 和 之后 , 之前 部分 主要 是 在 用户 提交 包含 无效 数据 的 表单 之前 进行 检查 以 警告 用户 ) 。
1条答案
按热度按时间mctunoxg1#
您可以对所有要求使用积极的观察头:
此正则表达式模式表示要匹配:
^
(从字符串开头算起)(?=.*\d.*\d)
Assert存在两个(或更多)数字(?=.*[^A-Za-z0-9].*[^A-Za-z0-9])
Assert两个符号(?=.*[A-Z])
声明至少一个大写字母(?=.*[a-z])
Assert至少一个小写字母\S+
匹配一个或多个非空白字符$
字符串结尾下面是一个正则表达式演示: