Ruby 检查字符串是否匹配任何正则表达式数组?
我有一个正则表达式数组:Ruby 检查字符串是否匹配任何正则表达式数组?,ruby,Ruby,我有一个正则表达式数组:[/apple/I、/banana/I、/berry/I] 我还有一个字符串数组,str\u array。我想迭代stru数组,并将任何与任何正则表达式不匹配的字符串输出到屏幕。如果它与任何一个匹配,它应该被忽略 我该怎么做呢?为了避免对每个正则表达式进行多次匹配,可以使用Regexp.union: str_array = %w[pineapple orange blueberry] str_array.reject{|e| [/apple/i, /banana/i, /
[/apple/I、/banana/I、/berry/I]
我还有一个字符串数组,str\u array
。我想迭代stru数组
,并将任何与任何正则表达式不匹配的字符串输出到屏幕。如果它与任何一个匹配,它应该被忽略
我该怎么做呢?为了避免对每个正则表达式进行多次匹配,可以使用
Regexp.union
:
str_array = %w[pineapple orange blueberry]
str_array.reject{|e| [/apple/i, /banana/i, /berry/i].any?{|re| re =~ e}}
#=> ["orange"]
regexes = [/apple/i, /banana/i, /berry/i]
union_regex = Regexp.union(regexes)
str_array.reject{|e| e =~ union_regex }
要避免对每个正则表达式进行多次匹配,可以使用
Regexp.union
:
regexes = [/apple/i, /banana/i, /berry/i]
union_regex = Regexp.union(regexes)
str_array.reject{|e| e =~ union_regex }
@抱歉,我没有校对我写的东西。如果你觉得答案很有帮助,请考虑选择你最看重的一个。如果你发现答案很有帮助,请考虑选择你最看重的一个。使用<代码>任何一个,当匹配的正则表达式被检测出来时也会做捷径。