簡體   English   中英

大查詢正則表達式提取

[英]Big Query Regex Extraction

我正在嘗試從 URL 中提取 item_subtype 字段。

此正則表達式在獲取第一項item_type時效果很好

SELECT REGEXP_EXTRACT('info?item_type=icecream&item_subtype=chocolate/cookies%20cream,vanilla&page=1', r'item_type=(\w+)')

但是什么是正確的正則表達式來獲取從“巧克力”開始一直到“&page1”之前的所有內容

我試過這個,但似乎無法讓它進一步工作到 go

SELECT REGEXP_EXTRACT('info?item_type=icecream&item_subtype=chocolate/cookies%20cream,vanilla&page=1', r'item_subtype=(\w+[^Z])')

基本上,我想提取 'chocolate/cookies%20cream,vanilla'

在您的情況下, \w+僅匹配一個或多個字母、數字或下划線。 您的預期值也可能包含其他字符。

你可以使用

SELECT REGEXP_EXTRACT('info?item_type=icecream&item_subtype=chocolate/cookies%20cream,vanilla&page=1', r'item_subtype=([^&]+)')

請參閱正則表達式演示

注意事項

  • item_subtype= - 此字符串匹配為文字字符序列
  • ([^&]+) - 捕獲組 1,匹配除&之外的一個或多個字符並將其捕獲到單獨的 memory 緩沖區中,該緩沖區由REGEXP_EXTRACT function 返回。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM