正则表达式:除序列外的任何字符

时间:2012-03-06 12:23:49

标签: ruby regex

  

[^ abc]除了:a,b或c

之外的任何单个字符

但是如何为除序列abc

之外的任何字符制作正则表达式

所以,像那样

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

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

PS:它不是分裂字符串

1 个答案:

答案 0 :(得分:15)

这称为lookaround,在您的情况下,您将要使用否定前瞻。我不确定Ruby中的确切语法,但(?!abc)中的某些内容可能有用。请注意,外观不会消耗任何输入,因此您需要使用此后跟任何您想要匹配的模式。也许(?:(?!abc).)+正是你要找的?