Vb.net 使用visual studio查找精确字符串并替换为回车符加字符串

Vb.net 使用visual studio查找精确字符串并替换为回车符加字符串,vb.net,visual-studio,Vb.net,Visual Studio,我希望找到确切字符串“Public”的所有实例,并将其替换为“'\n Public”(在每个公共声明上方添加空注释) 我还想忽略任何已经被注释掉的行,例如“Public”,并捕获整行内容我认为Visual Studio本身不可能做到这一点,但您可以下载类似的插件 , 提供了此类支持。Visual Studio 2019将允许您在使用RegEx选项时将Public替换为'\nPublic。但是,如果您没有2019(或者由于其他原因,它无法工作),您可以编写一些代码来执行此操作: 将此方法放入代码中

我希望找到确切字符串
“Public”
的所有实例,并将其替换为
“'\n Public”
(在每个公共声明上方添加空注释)


我还想忽略任何已经被注释掉的行,例如“Public”,并捕获整行内容

我认为Visual Studio本身不可能做到这一点,但您可以下载类似的插件

,


提供了此类支持。

Visual Studio 2019将允许您在使用RegEx选项时将
Public
替换为
'\nPublic
。但是,如果您没有2019(或者由于其他原因,它无法工作),您可以编写一些代码来执行此操作:

将此方法放入代码中并开始调试,然后调用该方法

Imports System.IO

Module Module1

    Public Sub foo()
        Dim fileName = New System.Diagnostics.StackTrace(True).GetFrame(0).GetFileName()
        Dim fileContents As String
        Using sr = New StreamReader(fileName)
            fileContents = sr.ReadToEnd().Replace(
                "Pub" & "lic",
                "'" & Environment.NewLine & "Pub" & "lic") ' String split so not replaced
        End Using
        Using sw = New StreamWriter(fileName, False)
            sw.Write(fileContents)
        End Using
    End Sub

    Sub Main()
        foo()
    End Sub

End Module
你想做的是

  • 加载查找和替换对话框,将公共放在查找内容字段中,并将'\nPublic放在替换为字段中

  • 检查匹配大小写并使用正则表达式

  • 然后你就走了。扩展使这更容易一些


    如果希望使用规范化的Windows样式行结尾,则可能需要替换为“”\r\nPublic

    您已经尝试了什么?只需常规查找和替换,以及正则表达式。两者都只需将文字“\n”放在那里。Visual Studio 2019与Regex一起工作,Find=Public,Replace=\nPublic