我有以下字符串:
coolStr = '<!-- \\n @author Phil R\\n @date 6.5.2012\\n @description Me T\\\\nesting S\\\\\\\\ntuff\\n-->'
该字符串似乎已被双重转义。我想把字符串变成:
newCoolStr = "<!-- \n @author Phil R\n @date 6.5.2012\n @description Me T\\nesting S\\\\ntuff\n-->"
所以如果你写:
puts newCoolStr
你会得到:
<!--
@author Phil R
@date 6.5.2012
@description Me T\nesting S\\ntuff
-->
我一直没能做到这一点。我能得到的最接近的是能够将反斜杠减半:
coolStr.gsub(/\\\\/) {'\\'}
但是由于我不明白的原因,这不会捕获“\\n”的实例,然后您最终会陷入这种情况,换行符与最初显示为“\\\\n”的内容之间没有区别。示例是:
<!-- \\n @author Phil R\\n @date 6.5.2012\\n @description Me T\\nesting S\\\\ntuff\\n-->
似乎是一个相当简单的问题,但我似乎无法理解。实现这一目标的最佳方法是什么?