Python 正規表現によって文字列内のURLを抽出する

URLを含む文字列からURLを抽出する場合、正規表現を使用する必要があります。

import re 
  
def Find(string): 
    # findall() 正規表現に一致する文字列を検索する
    url = re.findall('https?://(?:[-\w.]|(?:%[\da-fA-F]{2}))+', string)
    return url 

string = 'Ceodata のホームページは:https://www.ceodata.com,Google のホームページは:https://www.google.com'
print("Urls: ", Find(string))

?: 説明:

(?:x)

xと一致しますが、一致を記憶しません。このような括弧は非キャプチャリング(非格納)括弧と呼ばれ、正規表現演算子と使用される式の部分を定義できます。次の例 /(?:foo){1,2}/をご覧ください。 式が /foo{1,2}/の場合、{1,2}は ‘foo’ の最後の文字’o’にのみ適用されます。非キャプチャリング(非格納)括弧を使用すると、{1,2}が単語’foo’全体に適用されます。

上記のコードを実行した結果は次のとおりです。

Urls:  ['https://www.ceodata.com', 'https://www.google.com']
Share

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です