【问题标题】:Java multiple Regex ValidationJava 多重正则表达式验证
【发布时间】:2016-06-14 06:05:43
【问题描述】:

我是 java 新手,我正在尝试使用正则表达式验证用户输入。

我需要验证两种模式:

  • 版本
  • x & y 为数字时的version-1.xy

以下是我的模式,但不知何故它不起作用..

String versionRegex  = "^version-1.[1-9][1-9]|version";

感谢你们的帮助。

【问题讨论】:

  • 向我们展示它不起作用的示例
  • 您需要将. 转义为\.。其他一切似乎都是正确的
  • 你怎么知道“它不工作”?您提供了什么意见,结果是什么,您期望结果是什么?

标签: java regex


【解决方案1】:

这将支持版本/version-1.xy/VERSION/VERSION-1.xy

String versionRegex  = "(?i)^version(-1\\.[1-9][1-9])?";

【讨论】:

    【解决方案2】:
    String versionRegex  = "(?i)^version(-1\\.[1-9][1-9])?";
    

    . 需要在 java 中使用\\(?i) 进行转义以支持不区分大小写的匹配。

    【讨论】:

    • 我建议^version(-1\\.[1-9][1-9])?
    • 谢谢!如果我想支持大写字母?我应该添加什么......例如。 VERSION-1.xy 或 VERSION
    • @jawmar 您需要在正则表达式前面添加(?i),它将变得不区分大小写
    猜你喜欢
    • 2011-07-30
    • 1970-01-01
    • 2020-09-16
    • 2023-02-03
    • 1970-01-01
    • 2011-01-20
    • 2021-05-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多