java - 获取有关正则表达式验证的特定消息

标签 java android regex

是否可以获取有关正则表达式验证的特定消息?

例如。

我们的正则表达式是'[0-9]{1,5}',用户输入'123456',然后显示诸如'超出最大字符数' 如果用户输入'abcd',则应显示类似'invalid strings' 的消息。

有人知道吗?

提前致谢。

最佳答案

没有“自动”解决方案。但是,您可以保存多个正则表达式,并尝试将您的输入与这些包含每个正则表达式错误消息的正则表达式进行匹配。例如:

Pattern correctInput = Pattern.compile("\\d{1,5}");
Pattern onlyDigits = Pattern.compile("^\\d*$");

if (!correctInput.matcher(input).find()) {
    return onlyDigits.matcher(input).find()) ? "wrong number of characters" : "invalid characters";
}

关于java - 获取有关正则表达式验证的特定消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26825853/

相关文章:

java - Dropwizard 中应用和服务的区别

android - onClick 与 Relativelayout FC

android - Firebase,相同方法中的第二个 push() 不起作用

android - 将撰写版本更新到 1.3.0-alpha01 的问题

Python仅重新匹配字符、数字和一些标点符号

java - 正则表达式从字符串中删除不带 <br/> 制表符的 HTML 标签

java - 将资源添加到 JAR

java - 如何配置intellij运行pom文件中指定的所有maven插件

java - jpql 不加载 Blob

regex - 使用 sed 和正则表达式来替换字符串