正则表达式 - 如何识别字符串+空格+字符串

时间:2015-05-26 14:59:08

标签: java regex

我需要认识到一些类似的模式:
[信件] [某些空格] [信件]

到目前为止,我所做的是:

String regex = "[a-zA-Z]\\s+[a-zA-Z]";

1 个答案:

答案 0 :(得分:3)

根据要求,你写了字母(最后用 s )。

[letters][some spaces][letters]

要做到这一点,你必须将字符类量化为

String regex = "[a-zA-Z]+\\s+[a-zA-Z]+";
  • [a-zA-Z]+匹配一个或多个字母。这里+是量化[a-zA-Z]一次或多次的量词。

    Regex Demo

    如果你写[a-zA-Z]\\s+[a-zA-Z],它只会匹配空格前后的单个字符。

    Regex Demo

如果您希望整个字符串遵循此模式,则必须将锚点添加到模式中

String regex = "^[a-zA-Z]+\\s+[a-zA-Z]+$";
  • ^将正则表达式锚定在字符串的开头。
  • $将正则表达式锚定在字符串的末尾。
  • 这些锚点确保在字符串开始后立即显示^个字母,[a-zA-Z]+后跟空格和字母。第二组字母后跟字符串$
  • 的结尾