0

我想做类似的事情:

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

但我不希望将“whatever”替换为文字“\nwhatever\n”,我希望 \n 实际上对应于新行。

4

2 回答 2

1

\n 是一个新行,这取决于你如何打印它,它会给你一个新行,所以

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

然而:

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

除非我误解了这个问题。

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

puts "\nwhatever\n".split(?\n).inspect
=> ["", "whatever"]
于 2013-04-13T21:04:26.787 回答
1

我认为你需要双引号:

string.gsub(/(whatever)/,"\n\\1\n")
于 2013-04-13T21:07:00.810 回答