Visual Studio 2008:如何使用换行符进行查找和替换?

13
有时我想要搜索包含换行符的文本,有时又想要用换行符替换文本。如何在Visual Studio 2008中实现这一功能?
3个回答

28

使用正则表达式搜索:

在查找对话框中-展开“查找选项” 勾选“使用:正则表达式” 复选框

现在在搜索框旁边会出现一个活动的箭头,它将显示可用的RegEx选项/值。

您想要的值将是 \n。因此,“SearchValue\n”应该就可以了。

请注意,这不是您使用的标准正则表达式,而是VS特定的。 替换也可以使用正则表达式值。


如果您不熟悉正则表达式,请确保您知道,尽管此解决方案将在替换字符串中给您新行,但搜索字符串仍需要转义 - 一个示例是将搜索字符串中的所有'.'替换为''。 - danyim

6

补充Brian Schmitt的回答...

使用 \n 进行正则表达式搜索时,其效果与预期相同。然而,在使用 Visual Studio 2008 中使用 \n 进行正则表达式 替换 时需要有所注意。例如,如果你搜索 \n 并将其替换为 \n(是的,完全相同),那么文件中的所有换行符都将被转换为 Unix 样式的换行符(LF)。这可能是 Visual Studio 中的一个错误。我很难相信这是预期的功能。

为了解决这个问题,你可以使用带标签的表达式,使用花括号:例如,搜索 SearchValue{\n} 并替换为 ReplaceValue\1。这确保了在搜索和替换时使用相同的换行符。


1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接