[英]Google BigQuery extract string from column with regexp_extract
[英]BigQuery REGEXP_EXTRACT from URL - extract parameters values
我需要在BigQuery中使用的各種URL上使用REGEXP_EXTRACT ,並從中提取不同的字符串。
例如,我有這個URL:
url = https://www.whatever.com/record-a-beautiful-and-professional-voice-over?sec_context=recommendation&context_alg=nodes&sec_context_referrer=search
我想使用BigQuery REGEXP_EXTRACT
函數並提取名為context_alg=
的參數之后的字符串(在URL中的第一個&
之后顯示)。 含義 - 我的輸出將是nodes
。
( context_alg
是URL中的參數,並且始終具有相同的名稱)
所以實際上我需要使用類似的東西:
REGEXP_EXTRACT(url, "REGEXP that bring back 'nodes')
謝謝 !
嘗試下面的BigQuery
REGEXP_EXTRACT(url, r'context_alg=([^?&#]*)')
如果需要從URL中提取所有參數,還可以使用REGEXP_EXTRACT_ALL ,如下所示:
REGEXP_EXTRACT_ALL(query,r'(?:\?|&)((?:[^=]+)=(?:[^&]*))') as params
這將以數組形式返回結果(請參閱如何在Google BigQuery中將URL參數提取為ARRAY ):
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.