2009-09-23 23 views
0

我想驗證這DONOT具有數字字符串,以驗證字符串。如何使用正則表達式在Java中

如果我的字符串是「javaABC」,那麼它必須驗證 如果我的字符串是「java1」,那麼它不能被驗證

我想限制所有的整數。

+0

這類問題可以很容易地通過創建一個小的測試程序來回答。 – Pat

回答

4

試試這個:

String Text  = ...; 
boolean HasNoNumber = Text.matches("^[^0-9]*$"); 

'^[^0-9]*$'=從開始(^)結束($),有([...])只非(^)號碼(0-9)。您可以使用'\ D'作爲其他建議...但這很容易理解。

查看更多信息here

+1

也許正則表達式新手理解hasDigits = Text.matches(「[0-9]」)更容易? –

+0

你是對的! :d – NawaMan

+0

「^ \\ d * $」 是更短的形式) –

1

您可以使用此:

\D 

「\ d」 匹配非數字字符。

1

理解可能是用於匹配單個數字,最簡單的,如果發現不是創建一個正則表達式,使得確保該字符串中的所有字符都是非數字失敗。

1

這裏是你可以在一個字符串搜索位數的一種方法:

public boolean isValid(String stringToValidate) { 
    if(Pattern.compile("[0-9]").matcher(stringToValidate).find()) { 
     // The string is not valid. 
     return false; 
    } 

    // The string is valid. 
    return true; 
} 
相關問題