a 태그 삭제하는 방법, anchor 에 있는 모든 속성 제거하기

a 태그를 삭제해야 할 일이 생겼습니다. 그런데 꽤 글이 길다보니 a 태그에 있는 속성만 골라내어 삭제하는 일이 번거롭군요. 코드를 다음과 같이 간단하게 작성해 보았습니다.

private void RemoveATag()
{
    try
    {
        string result = string.Empty;
        string line = string.Empty;
        string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "\\beomsang.txt";
        StringBuilder s = new StringBuilder();

        using (StreamReader sr = new StreamReader(path))
        {
            while ((line = sr.ReadLine()) != null)
            {
                line = Regex.Replace(line, "(?:<a.*?>)(.*?)(?:<\\/a>)", delegate (Match match)
                {
                    return match.Groups[1].Value;
                });

                s.AppendLine(line);
            }
        }

        result = s.ToString();

        if (result.EndsWith(Environment.NewLine))
            result = result.TrimEnd(Environment.NewLine.ToCharArray());

        txtOut.Text = result;
        Clipboard.SetText(result);
    }
    catch (Exception ex)
    {
        throw ex;
    }
}

바탕화면에 있는 텍스트 파일을 읽어서 앵커 태그에 속하는 모든 속성을 제거하는데요, 정규표현식에서 델리게이트를 활용해 보았습니다. 위의 코드를 실행하면, 다음과 같은 결과를 얻을 수 있습니다.

입력값은 다음과 같습니다. 속성은 href 하나만 예시로 해보았습니다.

<div>안녕하세요, 범상입니다.</div>
<p>이것은 <a href="https://www.beomsang.com">beomsang.com</a>으로 연결되는 링크입니다.</p>

출력을 해보았을 때 속성을 정리해 봅니다.

<div>안녕하세요, 범상입니다.</div>
<p>이것은 beomsang.com으로 연결되는 링크입니다.</p>
댓글 쓰기
가져가실 때, 출처 표시 부탁드려요! 감사합니다. 💗