java - 匹配字母、数字或空格的正则表达式

标签 java regex

有人可以帮助我使用正则表达式吗?只有当字符串包含字母或带空格的字母时,该表达式才返回 true.. 字符串可以包含数字或字母或带空格的字母。

这是我尝试过的

/^[ a-zA-Z0-9]+$

最佳答案

您可以尝试以下正则表达式:

[\p{Alnum} ]+

正则表达式说明:

NODE             EXPLANATION
---------------  ------------------------------------------
[\p{Alnum} ]+    any character of: letters and digits, ' '
                 (1 or more times (matching the most amount
                 possible))

此外,如果您打算经常使用正则表达式,建议使用常量,以避免每次都重新编译,例如:

private static final Pattern REGEX_PATTERN = 
        Pattern.compile("[\\p{Alnum} ]+");

public static void main(String[] args) {
    String input = ...

    System.out.println(
        REGEX_PATTERN.matcher(input).matches()
    );
}

关于java - 匹配字母、数字或空格的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31870955/

相关文章:

java - Jersey 的全局异常处理

python - 在正则表达式字符串搜索后查找标记(单词)索引的有效方法

javascript - 在 Javascript 中将字符串转换为帕斯卡大小写(又名 UpperCamelCase)

regex - 替换 Simulink 模块名称中的非法字符

java - 正则表达式:String.split 和 Pattern.matches 不一致

java - 如何在android中让手电筒闪烁

java - ActionBar 中的选项卡数量

java - gradle 中的条件依赖

regex - sed 替换部分字符串

javascript - 正则表达式问题,与两列条目不匹配