在 Google 表单中使用正则表达式的标志
Using Flags of Regex within Google Forms
我正在尝试在 Google 表单中使用标志,我一直在谷歌搜索,希望在过去几个小时内找到答案,但没有找到任何答案。 Google 表格说正则表达式无效。即使我使用一个简单的正则表达式,例如:(?i)t
。我正在尝试在段落问题中使用正则表达式。
我怎样才能让它发挥作用?
编辑:
我真正需要的是重复匹配 [a-zA-Z" ]+( *),( *)[1-9]([0-9]??)\n
,所以每一行看起来像:Sam "The Man" McAdams , 9\n
。当然,行数未知。在正则表达式末尾使用 *
或 +
的重复修饰符不能满足我的需要,因为如果第一行被接受为有效,其他行可能真的由任何东西组成,而且它将其视为有效输入,但实际上不是。
您可以使用以下表达式来验证仅由符合您的模式的行组成的整个字符串:
^([a-zA-Z" ]+ *, *[1-9][0-9]?(\n|$))+$
参见regex demo。
要点是添加交替组以匹配换行符或字符串结尾 ((\n|$)
) 并将整个模式包装到 +
量化组 ((...)+
) 锚定在起点 (^
) 和终点 ($
).
我正在尝试在 Google 表单中使用标志,我一直在谷歌搜索,希望在过去几个小时内找到答案,但没有找到任何答案。 Google 表格说正则表达式无效。即使我使用一个简单的正则表达式,例如:(?i)t
。我正在尝试在段落问题中使用正则表达式。
我怎样才能让它发挥作用?
编辑:
我真正需要的是重复匹配 [a-zA-Z" ]+( *),( *)[1-9]([0-9]??)\n
,所以每一行看起来像:Sam "The Man" McAdams , 9\n
。当然,行数未知。在正则表达式末尾使用 *
或 +
的重复修饰符不能满足我的需要,因为如果第一行被接受为有效,其他行可能真的由任何东西组成,而且它将其视为有效输入,但实际上不是。
您可以使用以下表达式来验证仅由符合您的模式的行组成的整个字符串:
^([a-zA-Z" ]+ *, *[1-9][0-9]?(\n|$))+$
参见regex demo。
要点是添加交替组以匹配换行符或字符串结尾 ((\n|$)
) 并将整个模式包装到 +
量化组 ((...)+
) 锚定在起点 (^
) 和终点 ($
).