假设我有一个这样的正则表达式:
/\b[A-Z0-9._%a-zöäüÖÄÜ\-]+@(?:[A-Z0-9a-zöüäÖÜÄ\-]+\.)+[A-Za-z]{2,4}\z/
如果此字符串是有效的正则表达式,我如何通过Ruby / RoR检查?
答案 0 :(得分:3)
如果它没有引发错误,那么它就是一个有效的正则表达式。 :)
def valid_regex?(str)
Regexp.new(str)
true
rescue
false
end
valid_regex?('[a-b]') # => true
valid_regex?('[[a-b]') # => false