【问题标题】:How to check whether a string contains at least one alphabet in java?java - 如何在java中检查一个字符串是否包含至少一个字母?
【发布时间】:2012-12-26 00:51:15
【问题描述】:

我想要这样一种验证,即我的字符串必须包含至少一个字母。

我正在使用以下内容:

String s = "111a11";
boolean flag = s.matches("%[a-zA-Z]%");

标志给我false,即使a在我的字符串s

【问题讨论】:

  • 不要使用 %。那是针对 SQL LIKE,而不是正则表达式。改用.* 所以只需s.matches(".*[a-zA-Z].*");

标签: java string


【解决方案1】:

你想要的正则表达式是[a-zA-Z],但是你需要使用find()方法。

此页面可让您根据输入测试正则表达式。

Regular Expression Test Page

这里有一个 Java 正则表达式教程。

Java Regular Expressions tutorial

【讨论】:

  • 如果你考虑其他语言,你可以使用boolean m = str.matches(".*[\\p{L}]+.*]")
【解决方案2】:

您可以将.*[a-zA-Z]+.*String.matches() 方法一起使用。

boolean atleastOneAlpha = s.matches(".*[a-zA-Z]+.*");

【讨论】:

  • 我们可以检查这个正则表达式中的最小和最大字符数吗?
  • 你为它发了一个问题。
  • 伙计,我知道这已经有好几年了,但非常感谢你们!一直在寻找正确的正则表达式,这正是我所需要的。我要复习正则表达式,但我很挣扎。再次感谢!
猜你喜欢
  • 1970-01-01
  • 2017-03-13
  • 2016-07-20
  • 1970-01-01
  • 2020-06-05
  • 2012-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多