我对java很新,并且想知道是否有一个方法可以在字符串中找到大写字母,并且是否有方法可以找到字符串中的数字。 谢谢
答案 0 :(得分:0)
不,这不是专有方法 您可以使用正则表达式,或循环遍历字符串中的字母并提取您需要的内容。
在这里查看一些代码:
Extract digits from string - StringUtils Java
Extract digits from a string in Java
在提出问题之前,请先搜索。
答案 1 :(得分:0)
Java String API没有提供具体的方法。您必须使用String
提供的一些方法自行编码。
如果您是初学者,我建议您查看Manipulating Strings in Java,how do loops work in Java和Character
课程(特别是isDigit()
和{{ 1}}方法)。
答案 2 :(得分:-1)
你可以尝试
for(Character c : s.toCharArray()){
if(c.toString().toUpperCase().equals(c.toString())){
System.out.println("Upper case");
}
else {
System.out.println("Lower case");
}
}
所以我们将String转换为字符数组,迭代它并在每次迭代中我们将它自己与大写进行比较,以检查使用的是什么情况。
并且要查找号码,您可以执行以下操作
for(Character c : s.toCharArray()){
try{
Integer.parseInt(c.toString());
System.out.println("Integer Identified");
}catch (NumberFormatException ex){
System.out.println("Not an integer");
}
}
对于数字,只需使用Integer.parseInt()
解析字符串。如果它能够成功解析那么它是一个数字或者如果抛出异常那么它就不是数字。
答案 3 :(得分:-1)
由于您尚未指定任何进一步处理String的计划,您可以使用类似的内容来查找大写和数字:
public class Extraction {
public static void main(String[] args) {
String test = "This is a test containing S and 10";
for (char c : test.toCharArray()) {
if (Character.isDigit(c)) {
System.out.println("Digit: " + c);
}
else if (Character.isUpperCase(c)) {
System.out.println("Uppercase letter: " + c);
}
}
}
}