我需要将字符串“/ [\ w \ s] + /”转换为正则表达式。将字符串转换为正则表达式ruby
"/[\w\s]+/" => /[\w\s]+/
我试图使用像不同Regexp
方法:
Regexp.new("/[\w\s]+/") => /\/[w ]+\//
,类似地Regexp.compile
和Regexp.escape
。但他们没有一个像我预期的那样回报。
进一步我试图消除反斜线:
Regexp.new("[\w\s]+") => /[w ]+/
但没有运气。
然后我试图做到这一点很简单:
str = "[\w\s]+"
=> "[w ]+"
它逃脱。现在字符串如何保持原样并转换为正则表达式对象?
刚刚发现,你_can't_追加这样的选项,比如'/#{your_regex} /#{options}'。 – pduersteler
我想你说的是Rails? 'options'是一个哈希,而Ruby不是那么动态=) –
啊,是的。我试着通过它“ix”:) – pduersteler