
[英]BigQuery - Regex to match a pattern after a known string (positive lookbehind alternative)
[英]BigQuery : Regex after a string
我有一列带有值source:destination:city:street:number的列,而我只想获取不包含:的城市。
我怎样才能做到这一点?
提前致谢
我怎样才能做到这一点?
在BigQuery方言中均可使用:旧版和标准SQL
SELECT
REGEXP_EXTRACT('source:destination:city:street:number', r'(?:.+:){2}(.+)(?::.+){2}')
查看更多有关REGEXP_EXTRACT和re2语法的信息
如果我需要来源后的第一个单词:例如?
SELECT
REGEXP_EXTRACT('source:destination:city:street:number', r'(?:.+:){1}(.+)(?::.+){3}')
根据您的实际需求,这里有很多选择
下面是另一个(BigQuery旧版SQL)
SELECT
NTH(1, SPLIT(text,':')) AS source,
NTH(2, SPLIT(text,':')) AS destination,
NTH(3, SPLIT(text,':')) AS city,
NTH(4, SPLIT(text,':')) AS street,
NTH(5, SPLIT(text,':')) AS number
FROM (
SELECT 'source:destination:city:street:number' AS text
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.