是否存在允许固定大小的单词尾随空格的正则表达式?

Is there a regular expression that allows trailing spaces for a word with fixed size?

我们有一些用户输入的字段;到目前为止,我们验证此内容的规则是 [A-Z][A-Z0-9]{0,7}。 含义:任何至少有一个字符的大写单词;从一个字符开始;整个单词最多 8 个字符。

现在我被告知我们也应该接受 "trailing" space;但当然 - 仅尾随 spaces。更新;因为第一个答案错了​​:整个单词的最大长度仍然是 8 个字符!因为这正是导致我提出这个问题的原因。

我想这可以用两个表达式来检查:
a) [A-Z][A-Z0-9 ]{0,7}...必须匹配输入和
b) [ ][A-Z0-9] 不能匹配输入

(第二个表达式只是找到任何 "non-trailing" space)

但是还有一个 SINGLE 正则表达式可以用来检查这种情况吗?

或者这是其中一种情况,虽然运气好 - 正则表达式只接受上下文无关语法?!

如果你只想允许尾随 spaces 然后使用:

^[A-Z][A-Z0-9]{0,7} *$

或:

^[A-Z][A-Z0-9]{0,7}\h*$

这里\h*是横向的白色space,只匹配末尾的0或space或制表符。


编辑: 根据已编辑的问题,您可以使用此基于前瞻性的正则表达式:

^(?=[A-Z0-9\h]{1,8}$)[A-Z][A-Z0-9]*\h*$

RegEx Demo