我知道在Regex中,您可以拒绝符号列表,例如[^abc]
。我想在输入的中间看到一个完整的单词时拒绝。
更确切地说,我想拒绝“print<除了”all“>”之外的任何事情。 几个例子:
print all - match
frokenfooster - no match
print all nomnom - no match
print bollocks - no match
print allpies - no match
答案 0 :(得分:12)
答案 1 :(得分:2)
正则表达式支持分词\b
。
在字符串中搜索单词“all”的存在非常简单:
>> 'the word "all"'[/\ball\b/] #=> "all"
>> 'the word "ball"'[/\ball\b/] #=> nil
>> 'all of the words'[/\ball\b/] #=> "all"
>> 'we had a ball'[/\ball\b/] #=> nil
>> 'not ball but all'[/\ball\b/] #=> "all"
注意,它没有将它锚定到字符串的开头或结尾,因为\b
也将字符串的开头和结尾识别为字边界。