4

REGEXP_SUBSTR (Redshift)特定の URL からサブドメインとドメイン部分を抽出する正規表現を作成しようとしています。

私はstackoverflowから多くの提案を試みました:regular-expression-extract-subdomain-domain、getting-parts-of-a-url-regex、how-to-get-domain-name-from-urlなど。 regex バリデータですが、Redshift では機能しません。

正規表現は、http/https プレフィックスの有無にかかわらず URL を処理する必要があります。

正規表現を使用して特定の URL からサブドメインとドメインを抽出する他の方法はありますか?

4

1 に答える 1

4

たくさんの実験の後、これは私が使用するものです:

REPLACE(REGEXP_SUBSTR(url,'//[^/\\\,=@\\+]+\\.[^/:;,\\\\\(\\)]+'),'//','')

REPLACERedshift では非常に基本的な正規表現がサポートされているため、二重スラッシュを一致させてから削除する必要があります。

FWIW、これはRedshift UDF のイントロで Jeff Barr によって提供された正規表現とは大きく異なることに気付くでしょう。その正規表現は私には何も生成しません。

于 2016-04-26T13:04:40.090 に答える