generateHtmlContent method

String generateHtmlContent(
  1. String response
)

Implementation

String generateHtmlContent(String response) {
  List<String> lines = response.split('\n');
  String htmlContent = '';

  for (String line in lines) {
    line = line.replaceAll(RegExp(r'[!@#\$%^&*()]'), '');
    line = line.replaceAll("Image: ", "");

    const urlPattern =
        r'https?://(?:www\d?\.)?([a-zA-Z0-9.-]+)(?:\.[a-zA-Z]{2,6})(?:/[\w\d.-]*)*/?';

    final regex = RegExp(urlPattern);
    final matches = regex.allMatches(line);

    for (Match match in matches) {
      final url = match.group(0) ?? "";
      line = line.replaceAll(url, '<img src="$url" alt="$url" /><br>');
    }

    const urlPatternHttp =
        r'http?://(?:www\d?\.)?([a-zA-Z0-9.-]+)(?:\.[a-zA-Z]{2,6})(?:/[\w\d.-]*)*/?';

    final regexHttp = RegExp(urlPatternHttp);
    final matchesHttp = regexHttp.allMatches(line);

    for (Match match in matchesHttp) {
      final url = match.group(0) ?? "";
      line = line.replaceAll(url, '<img src="$url" alt="$url" /><br>');
    }
    htmlContent += '$line<br>';
  }

  return htmlContent;
}