如何用保留字的单词边界否定正则表达式中的单词

时间:2015-08-10 14:57:09

标签: ruby-on-rails regex

我正在尝试使用rails进行保留字验证

validates :reserved_words, format: { with: /\A^(?!.*\badmin\b|\bfoo\b|\bbar\b).*$\z/i, message: 'reserved words' }

以上是我尝试过的...但我认为每次使用\bword\b字边界都非常麻烦。有更有效的方法吗?

1 个答案:

答案 0 :(得分:2)

\A(?!.*\b(?:admin|foo|bar)\b).*\z

你可以这样缩短它。参见演示。

https://regex101.com/r/fM9lY3/32