如何检查字符串是否包含数字?

时间:2020-09-16 18:01:54

标签: java

因此,我应该创建一个方法来检查字符串是否包含任何数字。如果匹配,它将返回“是”,否则返回“否”。我想到目前为止,我所做的一切都正确,但是不确定如何使用indexOf()搜索0到9之间的任何数字。请注意,我是javascript的初学者,因此,我希望对初学者友好地回答。 / p>

String go( String a  ) 
{
    int x = a.indexOf( ??? );
    {
      if (x == -1)
      {
        return "no";
      }
      else
      {
        return "yes";
      }
    }
}

3 个答案:

答案 0 :(得分:1)

您可以将字符串s1与此正则表达式匹配,该正则表达式检查字符串中是否存在一个或多个数字。

boolean hasDigit = s1.matches(".*\\d+.*");

答案 1 :(得分:0)

尽管C ++的功能非常适合搜索任何指定的字符,但在Java中,必须检查每个字符。

Java equivalent for C++'s "std::string::find_first_of"

如果您希望改为使用indexOf,请注意,如果不存在char,它将返回-1。您处在正确的轨道上,但需要搜索它们中的每一个。

java:


public boolean hasNum(String s) {
  for(char num = '0'; num <= '9'; num=num+1) {
    if(s.indexOf(num) != -1) return true;
  }
  return false; //none of them were found so we got here
}

答案 2 :(得分:0)

df <-structure(list(Year = 1:5, Sales = c(100L, 200L, NA, 300L, NA
), Income = c(30L, 20L, 10L, 50L, -20L)), class = "data.frame", 
 row.names = c(NA, -5L))