2
我正在使用Ruby 2.4。我有一些字符串包含在正則表達式中有特殊含義的字符。因此,爲了消除這些字符被解釋爲正則表達式字符的可能性,我使用「Regexp.escape」試圖逃脫它們。但是,我似乎仍然無法讓下面的正則表達式的工作格蘭...爲什麼RegExp.escape在我的Ruby表達式中不起作用?
2.4.0 :005 > tokens = ["a", "b?", "c"]
=> ["a", "b?", "c"]
2.4.0 :006 > line = "1\ta\tb?\tc\t3"
=> "1\ta\tb?\tc\t3"
2.4.0 :009 > /#{Regexp.escape(tokens.join(" ")).gsub(" ", "\\s+")}/.match(line)
=> nil
如何正確我用「\ S +」的表情,whcih我確實想解釋爲正則表達式替換空間之前逃脫字符字符?