欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

java 字符串保留數(shù)字和字母

夏志豪2年前11瀏覽0評論

在Java編程中,字符串是一種常見的數(shù)據(jù)類型。當(dāng)我們需要在字符串中保留數(shù)字和字母時(shí),可以使用Java的String類提供的一些方法實(shí)現(xiàn)。

String str = "Hello789World456";
String onlyNumbers = str.replaceAll("[^0-9]", "");
String onlyLetters = str.replaceAll("[^a-zA-Z]", "");
System.out.println("Original string: " + str);
System.out.println("Only numbers: " + onlyNumbers);
System.out.println("Only letters: " + onlyLetters);

在上面的示例中,我們首先定義了一個(gè)字符串“Hello789World456”。然后,我們使用String類的replaceAll()方法和正則表達(dá)式提取字符串中的數(shù)字和字母。這里的[^0-9]表示除數(shù)字之外的所有字符,[^a-zA-Z]表示除字母之外的所有字符。

最后,我們將原始字符串和提取的數(shù)字/字母打印出來。輸出如下:

Original string: Hello789World456
Only numbers: 789456
Only letters: HelloWorld

注意,使用replaceAll()方法返回的是一個(gè)新的字符串,原始字符串不會(huì)被修改。

除了使用正則表達(dá)式,還可以使用Java的Character類提供的一些方法判斷字符是否是數(shù)字或字母:

String str = "Hello789World456";
StringBuilder onlyNumbers = new StringBuilder();
StringBuilder onlyLetters = new StringBuilder();
for (int i = 0; i< str.length(); i++) {
if (Character.isDigit(str.charAt(i))) {
onlyNumbers.append(str.charAt(i));
} else if (Character.isLetter(str.charAt(i))) {
onlyLetters.append(str.charAt(i));
}
}
System.out.println("Original string: " + str);
System.out.println("Only numbers: " + onlyNumbers);
System.out.println("Only letters: " + onlyLetters);

在這個(gè)示例中,我們使用StringBuilder類創(chuàng)建一個(gè)新的字符串來保存數(shù)字和字母。然后使用for循環(huán)遍歷原始字符串,并使用Character類的isDigit()和isLetter()方法判斷每個(gè)字符是數(shù)字還是字母,并將其添加到相應(yīng)的新字符串中。

最后,我們將原始字符串和提取的數(shù)字/字母打印出來。輸出如下:

Original string: Hello789World456
Only numbers: 789456
Only letters: HelloWorld

無論是使用正則表達(dá)式還是Character類的方法,都可以很方便地從字符串中提取數(shù)字和字母。