I’ve been trying to achieve this for a while, I have a string which contains a lot of HTML tags in it which is in some encoded form Like & lt; and & gt; (without the spaces) in between the string. Can anyone assist me in removing those tags so that I can get a plain string?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
Finally I achieved this using the Dart’s built in html package
Here’s how I did it
import ‘package:html/parser.dart’;
//here goes the function
String _parseHtmlString(String htmlString) {
var document = parse(htmlString);
String parsedString = parse(document.body.text).documentElement.text;
return parsedString;
}
I don’t know if there is any cleaner way to do this but this one worked for me.
回答2:
3 steps
first, add this to your "pubspec.yaml" file
dependencies: flutter_html: ^0.8.2
second, import to your dart file
import 'package:flutter_html_view/flutter_html_view.dart';
3rd, simply use
HtmlView(data: "Your Html Data"),
回答3:
use this class:
import 'package:html/parser.dart';
class HtmlTags {
static void removeTag({ htmlString, callback }){
var document = parse(htmlString);
String parsedString = parse(document.body.text).documentElement.text;
callback(parsedString);
}
}
example:
HtmlTags.removeTag(
htmlString: '<h1>Hello Bug</h1>',
callback: (string) => print(string),
);
output: Hello Bug