Có một số cách khác nhau để xóa HTML tagskhỏi một NSStringtrong Cocoa.
Một cách là kết xuất chuỗi thành một NSAttributedStringvà sau đó lấy văn bản được kết xuất.
Một cách khác là sử dụng NSXMLDocument's- objectByApplyingXSLTStringmethod để áp dụng một XSLTphép biến đổi thực hiện nó.
Thật không may, iPhone không hỗ trợ NSAttributedStringhoặc NSXMLDocument. Có quá nhiều trường hợp cạnh và HTMLtài liệu không đúng định dạng để tôi cảm thấy thoải mái khi sử dụng regex hoặc NSScanner. Có ai có giải pháp cho điều này không?
Một gợi ý là chỉ cần tìm các ký tự thẻ mở và đóng, phương pháp này sẽ không hoạt động trừ những trường hợp rất nhỏ.
Ví dụ: những trường hợp này (từ chương Perl Cookbook về cùng chủ đề) sẽ phá vỡ phương pháp này:
<IMG SRC = "foo.gif" ALT = "A > B">
<!-- <A comment> -->
<script>if (a<b && a>c)</script>
<![INCLUDE CDATA [ >>>>>>>>>>>> ]]>