如何在没有环视的情况下在 RegEx 中捕获“搜索”而不是“/搜索”?
Posted
技术标签:
【中文标题】如何在没有环视的情况下在 RegEx 中捕获“搜索”而不是“/搜索”?【英文标题】:How can I capture "search" but not "/search" in RegEx WITHOUT lookarounds? 【发布时间】:2020-08-11 14:46:14 【问题描述】:BigQuery 标准 SQL 不允许环视,我一直在努力解决如何“绕过”这个限制。如果我想捕获“搜索”而不是“/搜索”,我会使用正则表达式 (?<!\/)search
来捕获“搜索”而不是“/搜索”。
【问题讨论】:
【参考方案1】:见下例
#standardSQL
WITH example AS (
SELECT 'search' text UNION ALL
SELECT '/search'
)
SELECT text,
REGEXP_CONTAINS(text, r'(?:^|[^/])search') match
FROM example
有输出
Row text match
1 search true
2 /search false
【讨论】:
以上是关于如何在没有环视的情况下在 RegEx 中捕获“搜索”而不是“/搜索”?的主要内容,如果未能解决你的问题,请参考以下文章
Objective-c:如何在启用纵向锁定的情况下在捕获后修复图像方向