gpt4 book ai didi

java - 带有可选非重复点的字符串的正则表达式

转载 作者:行者123 更新时间:2023-11-30 04:01:25 25 4
gpt4 key购买 nike

我需要验证 Java 中的字符串以满足以下要求:

  • 字符串长度必须为 5-32 个字符
  • 字符串可以包含
    • 字母(a-z),
    • 数字 (0-9),
    • 破折号 (-),
    • 下划线 (_),
    • 和句点 (.)。
  • 字符串连续不得包含多个句点 (.)。

这个正则表达式是正确的解决方案吗?

^(?!([^\\.]*+\\.){2,})[\\.a-z0-9_-]{5,32}$

最佳答案

你已经很接近了,你可以使用这个正则表达式来阻止输入中的 2 个句点:

^(?!([^.]*\\.){2})[.a-z0-9_-]{5,32}$

如果您想阻止 2 个连续的点,请使用:

^(?!.*?\\.{2})[.a-z0-9_-]{5,32}$

关于java - 带有可选非重复点的字符串的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21912619/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com