使用 AND& 组合两个正则表达式
Combining two Regular Expressions with AND&
晚上好,
我正在尝试规范 Google 表单上的输入。由于 Google 表单允许我输入用于数据验证的正则表达式,我勉强开始写一些。
我想要的:
- 我希望输入的
String
长度小于或等于 140
个字符。使用 RegExp 很简单:^.{1,140}$
- 我希望输入
String
不包含单词 cat
、dog
和 cardiologist
。所以我为它写了一个 RegExp,使用 Negative lookahead:^(?=^(?:(?!cat|dog|cardiologist).)*$).*$
- 但是如果我希望我的
String
到 BOTH 小于 140 个字符,并且不包含 cat
、dog
和 cardiologist
?
如何在这两个正则表达式之间使用等效的 AND 组合它们?
如有任何帮助,我们将不胜感激。我已经尝试了几个小时,但正则表达式伤了我的脑子。
试试这个:
^(?:(?!cat|dog|cardiologist).){1,140}$
只需用 {1,140}
替换钢化点后的通配符即可量化长度。按照下面的 link 进行类似模式的演示。
晚上好,
我正在尝试规范 Google 表单上的输入。由于 Google 表单允许我输入用于数据验证的正则表达式,我勉强开始写一些。
我想要的:
- 我希望输入的
String
长度小于或等于140
个字符。使用 RegExp 很简单:^.{1,140}$
- 我希望输入
String
不包含单词cat
、dog
和cardiologist
。所以我为它写了一个 RegExp,使用 Negative lookahead:^(?=^(?:(?!cat|dog|cardiologist).)*$).*$
- 但是如果我希望我的
String
到 BOTH 小于 140 个字符,并且不包含cat
、dog
和cardiologist
? 如何在这两个正则表达式之间使用等效的 AND 组合它们?
如有任何帮助,我们将不胜感激。我已经尝试了几个小时,但正则表达式伤了我的脑子。
试试这个:
^(?:(?!cat|dog|cardiologist).){1,140}$
只需用 {1,140}
替换钢化点后的通配符即可量化长度。按照下面的 link 进行类似模式的演示。