【问题标题】:Match a 0-width space in google sheets/datastudio?匹配谷歌表格/数据工作室中的 0 宽度空间?
【发布时间】:2021-12-29 07:01:53
【问题描述】:

我正在尝试构建一个可以在 Google 表格和 DataStudio 上运行的正则表达式。正则表达式必须检查 URL 是否从头到尾正确构建,除了空格之外没有尾随字符。

低于适用于我的情况的测试版本(here 它的应用程序)

^(http[s]?:\/\/)([^:\/\s]+)(\/\?)((?:(?:\w+=\w+)&?)+)$

问题是我的数据库中的某些 url 包含前导或尾随零宽度空格(200B 代码)。这有时会使查询无效。 我无法在读取数据之前对其进行清理,并且在此正则表达式方言中找不到有效代码以将其包含在匹配项中。

是否有可能的解决方法?

【问题讨论】:

标签: google-sheets spreadsheet google-data-studio


【解决方案1】:

您始终可以在应用 REGEXMATCH 之前将其删除,例如:

=REGEXMATCH(SUBSTITUTE(E7;CHAR(8203);"");$D$2)

=REGEXMATCH(REGEXREPLACE(E7;CHAR(8203);"");$D$2)

您还可以在[^!-~]* 的实例之间“夹入”您拥有的 REGEX 表达式(这基本上允许任何超出可打印英文字符范围的内容):

^[^!-~]*(http[s]?:\/\/)([^:\/\s]+)(\/\?)((?:(?:\w+=\w+)&?)+)[^!-~]*$

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-01-19
    • 1970-01-01
    • 2020-06-18
    • 1970-01-01
    • 2023-04-09
    • 2019-10-15
    • 1970-01-01
    相关资源
    最近更新 更多