Visual Studio regex para eliminar todos los comentarios y líneas en blanco en el código VB.NET usando una macro

Intenté eliminar todos los comentarios y líneas vacías en un archivo con la ayuda de una macro. Ahora se me ocurrió esta solución que elimina los comentarios (hay algunos errores que se describen a continuación) pero no puede eliminar las líneas en blanco entre -

Sub CleanCode()
    Dim regexComment As String = "(REM [\d\D]*?[\r\n])|(?<SL>\'[\d\D]*?[\r\n])"
    Dim regexBlank As String = "^[\s|\t]*$\n"
    Dim replace As String = ""

    Dim selection As EnvDTE.TextSelection = DTE.ActiveDocument.Selection
    Dim editPoint As EnvDTE.EditPoint

    selection.StartOfDocument()
    selection.EndOfDocument(True)

    DTE.UndoContext.Open("Custom regex replace")
    Try
        Dim content As String = selection.Text
        Dim resultComment As String = System.Text.RegularExpressions.Regex.Replace(content, regexComment, replace)
        Dim resultBlank As String = System.Text.RegularExpressions.Regex.Replace(resultComment, regexBlank, replace)
        selection.Delete()
        selection.Collapse()
        Dim ed As EditPoint = selection.TopPoint.CreateEditPoint()
        ed.Insert(resultBlank)
    Catch ex As Exception
        DTE.StatusBar.Text = "Regex Find/Replace could not complete"
    Finally
        DTE.UndoContext.Close()
        DTE.StatusBar.Text = "Regex Find/Replace complete"
    End Try
End Sub

Entonces, así es como debería verse antes y después de ejecutar la macro.

ANTES D

Public Class Class1
    Public Sub New()
        ''asdasdas
        Dim a As String = "" ''asdasd
        ''' asd ad asd
    End Sub


    Public Sub New(ByVal strg As String)

        Dim a As String = ""

    End Sub


End Class

DESPUÉ

Public Class Class1
    Public Sub New()
        Dim a As String = ""
    End Sub
    Public Sub New(ByVal strg As String)
        Dim a As String = ""
    End Sub
End Class

Existen principalmente dos problemas principales con la macro

No puede eliminar las líneas en blanco en el medio. Si hay un fragmento de código que dice así

Dim a as String = "Name='Soham'"

Luego de ejecutar la macro se convierte en

Dim a as String = "Name='"

Respuestas a la pregunta(6)

Su respuesta a la pregunta