下面的字符串将被解析。

ford mustang,10,blue~~?bugatti veyron,13,black

我想换~~?带着马车返回

用\n替换只会增加字符串"\n"

如何做到这一点呢?


当前回答

如果你设置使用正则表达式标志,那么\n字符将被翻译。但是请记住,您必须修改您的搜索词,使其对regexp友好。在你的情况下,它应该像这样转义\~\~\?

其他回答

你可以在Visual Studio宏中使用多行搜索和替换,它为任务提供了很好的GUI。

确保在“查找和替换”对话框中选择了“使用:正则表达式”:

注意,对于Visual Studio 2010,这在Visual Studio Productivity Power Tools的Quick Find扩展中不起作用(截至2011年7月更新);相反,你需要使用完整的查找和替换对话框(使用Ctrl+Shift+H,或Edit—>查找和替换—>替换文件),并将范围更改为当前文档。

您也可以尝试在“替换”框中选中“使用正则表达式”框中的\x0d\x0a,使用Visual Studio查找/替换来获得回车+换行。 使用\n(换行)与使用\x0a相同

只是一个小小的警告…很多环境使用或需要“\r\n”,而不仅仅是“\n”。我遇到了一个问题,Visual Studio不匹配我的正则表达式字符串在行的末尾,因为我离开了“\r\n”的“\r”,所以我的字符串不能匹配一个缺失的不可见字符。

因此,如果您正在进行查找或替换,请考虑“\r”。

有关“\r”和“\n”的更多详细信息,请参见:https://stackoverflow.com/a/3451192/4427457

如果你设置使用正则表达式标志,那么\n字符将被翻译。但是请记住,您必须修改您的搜索词,使其对regexp友好。在你的情况下,它应该像这样转义\~\~\?