Regex Google表单字段验证中的可重复正则表达式模式
我不熟悉正则表达式,在几次试图找到答案后,我在谷歌表单字段验证中遇到了一个问题。这是我目前的状况(): 预期答案应该是:Regex Google表单字段验证中的可重复正则表达式模式,regex,google-forms,Regex,Google Forms,我不熟悉正则表达式,在几次试图找到答案后,我在谷歌表单字段验证中遇到了一个问题。这是我目前的状况(): 预期答案应该是:peter50 | alex20 | 但是当被调查者填写类似于彼得50 |亚历克斯|(没有数字)的字段时,这也是一个匹配。我如何才能强制受访者按照一种模式指定姓名及其对应的号码 具体来说,它应该是:Name1 number1 | Name2 number2 | Name3 number3 | Name4 number4 |…… 谢谢大家! 您可以使用 ^(?:\p{L}+\s\
peter50 | alex20 |
但是当被调查者填写类似于彼得50 |亚历克斯|(没有数字)的字段时,这也是一个匹配。我如何才能强制受访者按照一种模式指定姓名及其对应的号码
具体来说,它应该是:Name1 number1 | Name2 number2 | Name3 number3 | Name4 number4 |……
谢谢大家! 您可以使用
^(?:\p{L}+\s\d+\\124;)+$
请参阅(谷歌表单使用)
详情:
-字符串的开头^
-启动非捕获组:(?:
-一个或多个字母\p{L}+
-空白(使用\s
允许一个或多个空白)\s+
-一个或多个数字\d+
-结束分组,重复一次或多次)+
-字符串结束$
\\\$
^(?:\p{L}+\s\d+\\124;)+$
请参阅(谷歌表单使用)
详情:
-字符串的开头^
-启动非捕获组:(?:
-一个或多个字母\p{L}+
-空白(使用\s
允许一个或多个空白)\s+
-一个或多个数字\d+
-结束分组,重复一次或多次)+
-字符串结束$
\\\$
+
匹配太多,因为
匹配任何字符
您可以在末尾使用管道重复匹配,并以大写字符[a-Z]开头
^(?:[A-Z]\w*\s[0-9]+\|)+$
字符串的开头^
非捕获组(?:
匹配大写字符A-Z和可选单词字符[A-Z]\w*
匹配一个whitspace字符和1+个数字,然后\s[0-9]+\\\\\\
\
关闭组并重复1+次以匹配多个事件)+
字符串结尾$
^(?:[A-Z][^\s|]*\s[0-9]+(?:,\d+)?\|)+$
字符串的开头^
非捕获组(?:
匹配大写字符A-Z,后跟0+乘以除[A-Z][^\s |]*
|
匹配一个空格字符、1+位数和可选的小数部分,后跟\s[0-9]+(?:,\d+)\ \124;
关闭分组并重复1+次)+
字符串结尾$
问题是
+
匹配太多,因为
匹配任何字符
您可以在末尾使用管道重复匹配,并以大写字符[a-Z]开头
^(?:[A-Z]\w*\s[0-9]+\|)+$
字符串的开头^
非捕获组(?:
匹配大写字符A-Z和可选单词字符[A-Z]\w*
匹配一个whitspace字符和1+个数字,然后\s[0-9]+\\\\\\
\
关闭组并重复1+次以匹配多个事件)+
字符串结尾$
^(?:[A-Z][^\s|]*\s[0-9]+(?:,\d+)?\|)+$
字符串的开头^
非捕获组(?:
匹配大写字符A-Z,后跟0+乘以除[A-Z][^\s |]*
|
匹配一个空格字符、1+位数和可选的小数部分,后跟\s[0-9]+(?:,\d+)\ \124;
关闭分组并重复1+次)+
字符串结尾$