Regex 以指定方式包含字母和空格的正则表达式

Regex 以指定方式包含字母和空格的正则表达式,regex,Regex,我正在用java开发一个文本处理Api。我需要匹配以下字符串: 长度至少为8个字符。 应仅包含大写字母、小写字母或空格。 字母之间不应出现空格。但是,它们可以是前导的,也可以是尾随的。字符串也只能包含至少为8的空格。 我尝试过但失败的正则表达式: ^\s*[a-zA-Z]{8,}\s*$ 演示我的尝试 欢迎任何帮助。您可以使用下面的正则表达式来实现您的结果: ^(?=.{8,})*[a-zA-Z]**$ 对上述正则表达式的解释: ^-表示测试字符串的开始 (?=)-正向前瞻 {8,}-长度至少为

我正在用java开发一个文本处理Api。我需要匹配以下字符串:

  • 长度至少为8个字符。
  • 应仅包含大写字母、小写字母或空格。
  • 字母之间不应出现空格。但是,它们可以是前导的,也可以是尾随的。字符串也只能包含至少为8的空格。
  • 我尝试过但失败的正则表达式:

  • ^\s*[a-zA-Z]{8,}\s*$
  • 演示我的尝试


    欢迎任何帮助。

    您可以使用下面的正则表达式来实现您的结果:

    ^(?=.{8,})*[a-zA-Z]**$

    对上述正则表达式的解释:

  • ^
    -表示测试字符串的开始
  • (?=)
    -正向前瞻
  • {8,}
    -长度至少为8的换行符以外的任何字符
  • *
    -0或更多空格以匹配前导空格。(
    \s
    被避免)
  • [a-zA-Z]*
    -0个或更多字母(大写或小写)。(您可以将
    [a-z]*
    i
    (不区分大小写)标志一起使用。不过,对性能没有影响。)
  • *
    -0或更多空格以匹配尾随空格。(
    \s
    被避免)
  • $
    -表示测试字符串的结尾
    上面的正则表达式。

    用Java代码检查(1)要容易得多。你考虑过吗?是的!你说得对,清洁工。但是我想要一个符合所有三个要求的正则表达式。这符合我的目的。谢谢。为什么你在解释正则表达式时提到4和6点?