我在 BigQuery 上查詢 github。我正在嘗試使用以下正則運算式從給定檔案路徑獲取檔案名,即:假設/src/components/App.vue它應該回傳App:
SELECT regexp_extract(f.path, r'[A-Za-z0-9_\-\.] ?(?=\.)') as filename
這給出了問題標題中所述的錯誤。有沒有我可以用來實作我需要的解決方法?
uj5u.com熱心網友回復:
在下面嘗試
SELECT f.path, regexp_extract(f.path, r'/([^/.] ).[^.]*$') as filename
如果應用于您的問題中的樣本 - 輸出是

uj5u.com熱心網友回復:
采用
SELECT regexp_extract(f.path, r'([A-Za-z0-9_-] ?)[.]') as filename
請參閱正則運算式證明。
解釋
--------------------------------------------------------------------------------
( group and capture to \1:
--------------------------------------------------------------------------------
[A-Za-z0-9_-] ? any character of: 'A' to 'Z', 'a' to
'z', '0' to '9', '_', '-' (1 or more
times (matching the least amount
possible))
--------------------------------------------------------------------------------
) end of \1
--------------------------------------------------------------------------------
[.] any character of: '.'
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/453911.html
上一篇:正則運算式它忽略第一個標簽
