Hướng dẫn remove html tags from string c# without regex - loại bỏ các thẻ html khỏi chuỗi c # mà không có regex

Có cách nào dễ dàng để xóa tất cả các thẻ HTML hoặc bất cứ điều gì HTML liên quan từ một chuỗi không?

Ví dụ:

string title = " Hulk Hogan's Celebrity Championship Wrestling    [Proj # 206010]    (Reality Series,  )"

Trên đây thực sự nên:

"Đấu vật Giải vô địch nổi tiếng của Hulk Hogan [ProJ # 206010] (loạt thực tế)"

Hỏi ngày 9 tháng 8 năm 2013 lúc 19:12Aug 9, 2013 at 19:12

Hướng dẫn remove html tags from string c# without regex - loại bỏ các thẻ html khỏi chuỗi c # mà không có regex

3

Bạn có thể phân tích chuỗi bằng Gói HTML Agility và nhận bên trong.

    HtmlDocument htmlDoc = new HtmlDocument();
    htmlDoc.LoadHtml(@" Hulk Hogan's Celebrity Championship Wrestling    [Proj # 206010]    (Reality Series,  )");
    string result = htmlDoc.DocumentNode.InnerText;

Đã trả lời ngày 9 tháng 8 năm 2013 lúc 19:21Aug 9, 2013 at 19:21

Hướng dẫn remove html tags from string c# without regex - loại bỏ các thẻ html khỏi chuỗi c # mà không có regex

ssilas777ssilas777ssilas777

9.5624 Huy hiệu vàng43 Huy hiệu bạc67 Huy hiệu Đồng4 gold badges43 silver badges67 bronze badges

2

Bạn có thể sử dụng mã dưới đây trên chuỗi của mình và bạn sẽ nhận được chuỗi hoàn chỉnh mà không cần phần HTML.

string title = " Hulk Hogan's Celebrity Championship Wrestling    [Proj # 206010]    (Reality Series,  )".Replace(" ",string.Empty);            
        string s = Regex.Replace(title, "<.*?>", String.Empty);

Đã trả lời ngày 9 tháng 8 năm 2013 lúc 20:50Aug 9, 2013 at 20:50

VinayvinayVinay

6752 Huy hiệu vàng7 Huy hiệu bạc19 Huy hiệu đồng2 gold badges7 silver badges19 bronze badges

0

Tôi đã xây dựng một chức năng nhỏ để loại bỏ các thẻ HTML.

public static string RemoveHtmlTags(string text)
        {
            List openTagIndexes = Regex.Matches(text, "<").Cast().Select(m => m.Index).ToList();
            List closeTagIndexes = Regex.Matches(text, ">").Cast().Select(m => m.Index).ToList();
            if (closeTagIndexes.Count > 0)
            {
                StringBuilder sb = new StringBuilder();
                int previousIndex = 0;
                foreach (int closeTagIndex in closeTagIndexes)
                {
                    var openTagsSubset = openTagIndexes.Where(x => x >= previousIndex && x < closeTagIndex);
                    if (openTagsSubset.Count() > 0 && closeTagIndex - openTagsSubset.Max() > 1 )
                    {
                        sb.Append(text.Substring(previousIndex, openTagsSubset.Max() - previousIndex));
                    }
                    else
                    {
                        sb.Append(text.Substring(previousIndex, closeTagIndex - previousIndex + 1));
                    }
                    previousIndex = closeTagIndex + 1;
                }
                if (closeTagIndexes.Max() < text.Length)
                {
                    sb.Append(text.Substring(closeTagIndexes.Max() + 1));
                }
                return sb.ToString();
            }
            else
            {
                return text;
            }
        }

Đã trả lời ngày 6 tháng 7 lúc 16:09Jul 6 at 16:09

Hướng dẫn remove html tags from string c# without regex - loại bỏ các thẻ html khỏi chuỗi c # mà không có regex

public static string StripHTML(string input)
{
    if (input==null)
    {
        return string.Empty;
    }
    return Regex.Replace(input, "<.*?>", String.Empty);

}

Hướng dẫn remove html tags from string c# without regex - loại bỏ các thẻ html khỏi chuỗi c # mà không có regex

Shunya

2.2114 Huy hiệu vàng15 Huy hiệu bạc27 Huy hiệu đồng4 gold badges15 silver badges27 bronze badges

Đã trả lời ngày 27 tháng 7 lúc 6:25Jul 27 at 6:25

1

Làm thế nào tôi có thể nhận được chuỗi mà không có thẻ HTML?

Các thẻ HTML có thể được xóa khỏi một chuỗi đã cho bằng cách sử dụng phương thức thay thế () của lớp chuỗi. Chúng ta có thể xóa các thẻ HTML khỏi một chuỗi đã cho bằng cách sử dụng biểu thức thông thường. Sau khi xóa các thẻ HTML khỏi một chuỗi, nó sẽ trả về một chuỗi dưới dạng văn bản thông thường.by using replaceAll() method of String class. We can remove the HTML tags from a given string by using a regular expression. After removing the HTML tags from a string, it will return a string as normal text.

Có thể xóa các thẻ HTML khỏi dữ liệu không?

PHP cung cấp một chức năng sẵn có để xóa các thẻ HTML khỏi dữ liệu.Chức năng Strip_tags () là một hàm sẵn có trong PHP loại bỏ các chuỗi HTML, XML và PHP.Nó chấp nhận hai tham số.Hàm này trả về một chuỗi với tất cả các thẻ null byte, HTML và PHP bị tước từ một $ str.. The strip_tags() function is an inbuilt function in PHP that removes the strings form HTML, XML and PHP tags. It accepts two parameters. This function returns a string with all NULL bytes, HTML, and PHP tags stripped from a given $str.

Làm cách nào để loại bỏ một chuỗi trong HTML?

Để loại bỏ tất cả các thẻ HTML từ một chuỗi, có rất nhiều thủ tục trong JavaScript.Để loại bỏ các thẻ, chúng tôi có thể sử dụng hàm thay thế () và cũng có thể sử dụng thuộc tính .textContent, .innertext thuộc tính từ HTML DOM.use replace() function and can also use . textContent property, . innerText property from HTML DOM.

Làm thế nào loại bỏ thẻ HTML khỏi chuỗi trong React?

// Xóa thẻ HTML khỏi chuỗi, chỉ để lại hàm văn bản bên trong RemoveHtml (str) {var tmp = document.createelement ("div");tmp.innerhtml = str;Trả về TMP.TextContent ||TMP.removeHTML(str){ var tmp = document. createElement("DIV"); tmp. innerHTML = str; return tmp. textContent || tmp.