在Big Query查询中,我们可以使用逆向函数REGEXP_EXTRACT
来实现正向预查的替代方法。具体步骤如下:
REGEXP_EXTRACT
从字符串中提取所需的部分。例如,以下查询将从一行中提取最后一个逗号之前的所有内容:SELECT REGEXP_EXTRACT('abc,def,ghi,jkl', r'^(.*),[^,]*$')
^(.*),[^,]*$
表示匹配最后一个逗号之前的所有内容。具体而言,^(.*)
会匹配行首的任何字符,并将其保存到一个捕获组中,然后,[^,]*$
会匹配最后一个逗号及其后面的所有字符。这使我们可以从行末尾向前提取最后一个逗号之前的所有内容。附代码示例:
SELECT REGEXP_EXTRACT('abc,def,ghi,jkl', r'^(.*),[^,]*$')
上一篇:BigQuery上连接表格的问题