如何在正则表达式替换字符串中放置\ n?

时间:2013-04-13 21:01:15

标签: ruby regex

我想做点什么:

string.gsub(/(whatever)/,'\n\1\n')

但是我不想用文字“\ nwhatever \ n”替换“无论什么” 我希望\ n实际上对应一个新行。

2 个答案:

答案 0 :(得分:1)

\ n是一个新行,这就是它的含义 根据你的打印方式,它会给你一个新的一行

puts "\nwhatever\n".inspect
=> "\nwhatever\n"

但是:

puts "\nwhatever\n"
=> 
=> whatever
=>

除非我误解了这个问题。

如果您想将其拆分为列表,请执行以下操作:

puts "\nwhatever\n".split(?\n).inspect
=> ["", "whatever"]

答案 1 :(得分:1)

我认为你需要双引号:

string.gsub(/(whatever)/,"\n\\1\n")