我想知道是否有人可以帮助我。
bigquery表中的我的eventinfo.eventLabel字段包含以下数据:
查看BDAT组的查看代码红色
SELECT
#select all fields excluding those under the hits record
* EXCEPT (hits),
#start array - this rebuilds the hit record
ARRAY(
SELECT
#unnest the hit field, select each field excluding those under the page record
AS STRUCT * EXCEPT (eventInfo ),
(
SELECT
#select all page fields excluding pageTitle
AS STRUCT eventInfo.* EXCEPT (eventLabel),
#remove the query parameter from the pagePath fields
REGEXP_REPLACE(eventinfo.eventLabel, r'View\sView .*', 'View View redacted') AS eventLabel) AS eventinfo
FROM
UNNEST(hits) ) AS hits
FROM
`bigquery.Tested.ga_sessions_20180801`
我正在尝试删除数据中的“红色代码”元素,并将其替换为“已编辑”一词。
请注意,“红色代码”不是唯一的值,字符数可以增加和减少。但是“ View View”和“ for the”在我的整个数据中都是不变的。
我知道问题出在REGEXP REPLACE行,我可以设法将“编辑过的”文本放入字段中,但是我无法删除“红色代码”文本。
有人可以看看这个问题,并提供一些有关如何更改它的指导。
非常感谢和问候
克里斯
答案 0 :(得分:0)
select
[
REGEXP_REPLACE('View View Code red for the BDAT group', r'View View .*? for the', 'View View redacted for the'),
REGEXP_REPLACE('View View Code blue for the BDAT group', r'View View .*? for the', 'View View redacted for the'),
REGEXP_REPLACE('View View red code for the BDAT group', r'View View .*? for the', 'View View redacted for the')
]