Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何正则化不包含空格的单词?_Java_Regex - Fatal编程技术网

Java 如何正则化不包含空格的单词?

Java 如何正则化不包含空格的单词?,java,regex,Java,Regex,我想正则表达式一个值没有空格(^[\S]*$),只包含字母(\w+)。但是我如何将这两个正则表达式组合成一个正则表达式呢 预期结果应为: oneword: true one word: false 1word: false 对于匹配的字母,仅此正则表达式就足够了: ^[a-zA-Z]+$ \w表示字母、数字和下划线 对于匹配的字母,仅此正则表达式就足够了: ^[a-zA-Z]+$ \w表示字母、数字和下划线 \w不仅匹配字母表,还匹配数字、下划线()。要仅匹配字母,请使用: ^[A-Z

我想正则表达式一个值没有空格(
^[\S]*$
),只包含字母(
\w+
)。但是我如何将这两个正则表达式组合成一个正则表达式呢

预期结果应为:

oneword: true
one word: false
1word: false

对于匹配的字母,仅此正则表达式就足够了:

^[a-zA-Z]+$
  • \w
    表示字母、数字和下划线

对于匹配的字母,仅此正则表达式就足够了:

^[a-zA-Z]+$
  • \w
    表示字母、数字和下划线

\w
不仅匹配字母表,还匹配数字、下划线(
)。要仅匹配字母,请使用:

^[A-Za-z]+$

\w
不仅匹配字母表,还匹配数字、下划线(
)。要仅匹配字母,请使用:

^[A-Za-z]+$

我想您可能需要这样的内容(如果空字符串有效):


\w
包含数字和
\u
,因此与
1word
匹配。我想您可能需要类似的内容(如果空字符串有效):


\w
包含数字和
\uu
,因此这将与
1word
匹配如果您想要非正则表达式解决方案,也许您可以尝试以下方法:

public boolean valid(final String string){
    for(final char c : string.toCharArray())
        if(!Character.isLetterOrDigit(c))
            return false;
    return true;
}

如果您想要一个非正则表达式的解决方案,或许可以尝试以下方法:

public boolean valid(final String string){
    for(final char c : string.toCharArray())
        if(!Character.isLetterOrDigit(c))
            return false;
    return true;
}

使用字母字符
\p{Alpha}
[\p{Lower}\p{Upper}]

使用上面的代码,正则表达式将是
\p{Alpha}+
,它匹配一个或多个字母字符。这会忽略数字、下划线、空格等


有关更多信息,请参阅中的部分POSIX字符类(仅限US-ASCII)

使用字母字符
\p{Alpha}
[\p{Lower}\p{Upper}]

使用上面的代码,正则表达式将是
\p{Alpha}+
,它匹配一个或多个字母字符。这会忽略数字、下划线、空格等


有关更多信息,请参阅中的部分POSIX字符类(仅限US-ASCII)

+对于非空字符串:)+对于非空字符串:)