由一个或多个大写单词或整数组成的正则表达式,用空格分隔

时间:2017-10-11 01:11:14

标签: regex

所以总体结果应该是'测试123你好'我使用了regex101,逻辑说我正确地做了但是我似乎无法正确地限制文本。

^(([A-Z][a-z]*)|([0-9]+)\s)+

3 个答案:

答案 0 :(得分:1)

这个怎么样:

(不必以空格结尾)

^((([A-Z]([a-z]*))|([0-9]+))\s)*((([A-Z]([a-z]*))|([0-9]+)))

(必须以空格结尾)

^((([A-Z]([a-z]*))|([0-9]+))\s)+

答案 1 :(得分:1)

您可以通过运行以下表达式来测试您的方案:

^(\b([A-Z]|[0-9])\w*\s*)+$

答案 2 :(得分:0)

^(\b([A-Z][a-z]*|[0-9]+)\s?)+$

解释

^                                 start of line
 (                                group 1, which represent one group of word
  \b                              word boundary
    (                             a group of 
     [A-Z][a-z]*                    capitalized word 
                |                   or
                 [0-9]+             bunch of digits
                       )          end of group
                        \s?       followed by optional space
                            )+    group 1 happening at least once
                             $    end of line