【问题标题】:Regexp: Any characters except sequence正则表达式:除序列外的任何字符
【发布时间】:2012-03-06 20:50:43
【问题描述】:

[^abc] 任何单个字符,除了:a、b 或 c

但是我怎样才能为序列abc以外的任何字符创建正则表达式

这么说吧

"Hello abc awesome world".scan /[^(abc)]+/

将返回“Hello”和“awesome world”。

PS:这不是分割字符串

【问题讨论】:

标签: ruby regex


【解决方案1】:

这称为lookaround,在您的情况下,您将希望使用负前瞻。我不确定 Ruby 中的确切语法,但 (?!abc) 可能会起作用。请注意,环视不会消耗任何输入,因此您需要将其后跟您想要匹配的任何模式。也许(?:(?!abc).)+ 是您要找的?

【讨论】:

  • 为我节省了很多时间。正在做(?!abc).+,它对整个字符序列进行了负前瞻。这个似乎是在逐个字符的基础上做的,我什至没有想到。现在一切都很好,很幸福。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-03-06
  • 1970-01-01
  • 1970-01-01
  • 2012-04-03
  • 1970-01-01
  • 1970-01-01
  • 2015-10-10
相关资源
最近更新 更多