Il existe plusieurs façons de supprimer HTML tags
un fichier NSString
in Cocoa
.
Une façon est de rendre la chaîne dans un NSAttributedString
, puis de récupérer le texte rendu.
Une autre façon est d'utiliser NSXMLDocument's
- objectByApplyingXSLTString
method pour appliquer une XSLT
transformation qui le fait.
Malheureusement, l'iPhone ne prend pas en charge NSAttributedString
ou NSXMLDocument
. Il y a trop de cas de bord et de HTML
documents mal formés pour que je me sente à l'aise avec l'utilisation de regex ou NSScanner
. Quelqu'un a-t-il une solution à cela?
Une suggestion a été de rechercher simplement les caractères d'ouverture et de fermeture des balises, cette méthode ne fonctionnera pas sauf dans des cas très triviaux.
Par exemple, ces cas (du chapitre Perl Cookbook sur le même sujet) casseraient cette méthode:
<IMG SRC = "foo.gif" ALT = "A > B">
<!-- <A comment> -->
<script>if (a<b && a>c)</script>
<![INCLUDE CDATA [ >>>>>>>>>>>> ]]>