Maomao の共有は高品質である必要があります
図に示すように、サーバーから返されたデータには HTML の大きな文字列が含まれていますが、文字列のみを使用します。バックグラウンドでデータを変更する手間がかかります。 。 。 。 (ニャーはとても思いやりがあります) そこで彼は自分で解決策を考えました。
実際には、解決策はたくさんあります。 。たとえば、文字列インターセプト メソッドを使用して範囲を取得し、位置に基づいて必要なコンテンツを取得します。 。くそー、考えただけでとても心が折れそう。
正規表現なども使用します。 。 。正規表現は、正直、面接で話すか、プロジェクトの勉強で使う以外に自分で書いたことがなかったので、ネットで調べて勉強し、みんなに共有する方法を入手しました。
//去掉html标签-(NSString *)flattenHTML:(NSString *)html { NSScanner *theScanner; NSString *text = nil; theScanner = [NSScanner scannerWithString:html]; while ([theScanner isAtEnd] == NO) { // find start of tag [theScanner scanUpToString:@"<" intoString:NULL] ; // find end of tag [theScanner scanUpToString:@">" intoString:&text] ; // replace the found tag with a space //(you can filter multi-spaces out later if you wish) html=[html stringByReplacingOccurrencesOfString:[NSString stringWithFormat:@"%@>", text] withString:@""]; } return html;}
さて、これは上記のメソッドです。これらのラベル メソッド (< >) を @"" スペースに直接置き換えて返します。