有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

正则表达式中的java空格

我使用此规则验证java web应用程序的许多输入字段:

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

但我需要修改它,因为我有两个字段需要允许空白(例如:Address)

我如何修改它以允许空白(如果可能,不在开始时)

我想我需要使用一些scape字符,比如\

我尝试了几种不同的组合,但都不起作用。谁能帮我弄一下这个正则表达式吗


共 (6) 个答案

  1. # 1 楼答案

    像这样试试^[a-zA-Z0-9]+$也就是说,在其中添加一个空格

  2. # 2 楼答案

    这个正则表达式不允许字符串结尾有空格,一个缺点是它也接受下划线字符

    ^(\w+ )+\w+|\w+$
    
  3. # 3 楼答案

    使用以下命令:^[a-zA-Z0-9]+[a-zA-Z0-9 ]+$。这应该行得通。第一个原子确保开头必须至少有一个字符

  4. # 4 楼答案

    如果只想使用空白,可以执行以下操作:

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

    如果要包含制表符\t新行\n\r\n字符,可以执行以下操作:

    ^[a-zA-Z0-9\s]+$

    另外,如您所问,如果您不希望在开始时将空格设置为

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

  5. # 5 楼答案

    试试这个:我假设任何长度至少为一个字符的输入都是有效的。前面提到的答案没有考虑到这一点

    "^[a-zA-Z0-9][a-zA-Z0-9 ]*$"
    

    如果要允许所有空格字符,请将空格替换为“\s”

  6. # 6 楼答案

    我建议使用这个:

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

    它增加了两件事:第一,保证开头没有空格,同时允许使用所需的字符。之后,允许使用字母a-zA-Z,以及所有数字和空格(我的正则表达式末尾有一个空格)