如何使用java查找包含字母或数字字符的字符串?
可能重复:如何使用java查找包含字母或数字字符的字符串?,java,Java,可能重复: 我想知道给定的字符串是否有字母或数字字符。我将如何使用java实现这一点 谢谢看看这个: 在Character类中有两种方便的方法可以帮助您 只需将字符串转换为字符数组,然后单步遍历数组。在什么中“查找”?请提供一个更全面的解释,说明您想要实现的目标和/或一个示例(如果可能)。您是否尝试过搜索?你的问题写得没有多大意义,但是。。。StackOverflow对母语不是英语的人来说是残忍的(5票?!?)。你的意思是问“我如何确定一个字符串是否代表一个数字”?如果是这样,那么您可
我想知道给定的字符串是否有字母或数字字符。我将如何使用java实现这一点 谢谢看看这个:
在
Character
类中有两种方便的方法可以帮助您
只需将
字符串
转换为字符数组,然后单步遍历数组。在什么中“查找”?请提供一个更全面的解释,说明您想要实现的目标和/或一个示例(如果可能)。您是否尝试过搜索?你的问题写得没有多大意义,但是。。。StackOverflow对母语不是英语的人来说是残忍的(5票?!?)。你的意思是问“我如何确定一个字符串是否代表一个数字”?如果是这样,那么您可以使用正则表达式或ApacheStringUtils库,正如建议的那样。您可能还会看到一些代码示例,其中人们使用“Double.parseDouble()”并试图捕获NumberFormatException。。。但使用try-catch块以这种方式驱动逻辑确实不是一种好的做法。这只处理ASCII字母字符。@sudocode的+1:特别是如果OP不是以英语为母语的人,他很可能需要支持非ASCII字符。@sudocode和@Joachim Sauer我同意,但为了我的辩护,我没有太多工作要做。只要问题仍然那么模糊,我的回答是正确的。@Oltarus:我同意“没有太多工作要做”的部分。但是ä
、ö
和ß
当然是字母顺序的,就像ě
、ë
和ë
一样。
String s = "%$a*";
Pattern p = Pattern.compile("[a-zA-Z0-9]");
Matcher m = p.matcher(s);
if (m.find())
System.out.println("The string \"" + s + "\" contains alphanumerical characters.");