文字列の中からURLを抽出する方法

コード

void main() {
  final text = 'Youtubeのリンクはhttps://www.youtube.com/です。';

  // 正規表現
  final regExp = RegExp(
      r'((https?:www\.)|(https?://)|(www\.))[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z0-9]{1,6}(/[-a-zA-Z0-9()@:%_+.~#?&/=]*)?',
    );
  final matches = regExp.allMatches(text);

  for(final regExpMatch in matches) {
    // URLを抽出
    print(text.substring(regExpMatch.start, regExpMatch.end));
  }
}

DartPad

参考

正規表現のコード(RegExp部分)

関連


この記事が気に入ったらサポートをしてみませんか?