ListViewでデータを表示する前にテキストの中にURLが含まれているかどうかのチェックをしてから、その結果に対しての表示を変更させるのに使いました。
調べた時に日本語の説明がなかったので短いですが備忘録として!
final urlRegExp = RegExp(
r"((https?:www\.)|(https?:\/\/)|(www\.))[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9]{1,6}(\/[-a-zA-Z0-9()@:%_\+.~#?&\/=]*)?");
final urlMatches = urlRegExp.allMatches(message);
List<String> urls = urlMatches
.map((urlMatch) =>
message.substring(urlMatch.start, urlMatch.end))
.toList();
urls.forEach((value) {
if (value != null) {
// 処理
} else {
// 処理
}
});