如何检查Java中单个单词中的非单词字符?

use*_*680 2 java string

我想知道诸如"equi-distant"或"they are"之类的字符串是否包含非单词字符.有没有一种简单的方法来检查它?

bob*_*mcr 6

没有正则表达式的解决方案(对于像这样的非常简单的检查通常更快):

public static boolean hasNonWordCharacter(String s) {
    char[] a = s.toCharArray();
    for (char c : a) {
        if (!Character.isLetter(c)) {
            return true;
        }
    }

    return false;
}
Run Code Online (Sandbox Code Playgroud)