java 中的字符串常常包含了不止一種字符,其中可能既有數字又有字母。
String myString = "Hello World! 123";
在上述字符串中,既包含了字母也包含了數字。
我們可以使用 java 的字符串方法來處理這些字符串中的數字和字母,比如我們可以使用isDigit()
方法來判斷一個字符是否為數字:
char myChar = '5'; if(Character.isDigit(myChar)){ System.out.println("myChar 是一個數字"); }
同樣的,我們也可以使用isLetter()
方法來判斷一個字符是否為字母:
char myChar = 'A'; if(Character.isLetter(myChar)){ System.out.println("myChar 是一個字母"); }
如果我們想要找到一個字符串中所有的數字,可以使用正則表達式來匹配,然后使用Pattern
類和Matcher
類來查找:
String myString = "Hello World! 123"; Pattern pattern = Pattern.compile("\\d+"); Matcher matcher = pattern.matcher(myString); while(matcher.find()){ System.out.println("找到了一個數字:" + matcher.group()); }
上述代碼使用了正則表達式\\d+
來匹配一個或多個數字,然后通過Matcher
類的find()
方法來查找字符串中所有的匹配項,并通過group()
方法獲取到匹配項的具體值。
同樣的,如果我們想要找到一個字符串中所有的字母,只需要將正則表達式更改一下即可:
String myString = "Hello World! 123"; Pattern pattern = Pattern.compile("[a-zA-Z]+"); Matcher matcher = pattern.matcher(myString); while(matcher.find()){ System.out.println("找到了一個字母:" + matcher.group()); }
上述代碼使用了正則表達式[a-zA-Z]+
來匹配一個或多個大小寫字母,然后通過Matcher
類的find()
方法來查找字符串中所有的匹配項,并通過group()
方法獲取到匹配項的具體值。