gpt4 book ai didi

regex - REGEXP_EXTRACT(word,r'(\w\w\'\w\w)' ) 中的 r 是什么意思

转载 作者:行者123 更新时间:2023-12-04 22:30:50 28 4
gpt4 key购买 nike

我在 BigQuery Reference 或 re2 wiki 中都找不到答案。

在 BigQuery Reference 中 Regex 部分的所有示例中,每个 regex 之前都有一个“r”,但我在任何地方都找不到它的含义。例如:

REGEXP_EXTRACT(word,r'(\w\w\'\w\w)')

在我看来,它是 'regex' 或其他类型的类型转换,因为它允许在以下字符串中使用 '\' 和 '''。

感谢任何知道并发布答案的人:)

最佳答案

来自维基百科“一些语言提供了一种方法来指定要处理的文字,而无需任何特定于语言的解释。这避免了转义的需要,并产生更清晰的字符串。”

http://en.wikipedia.org/wiki/String_literal#Raw_strings

例如,这看起来像一个有效的正则表达式,但转义会被错误解释:

SELECT REGEXP_EXTRACT("ab'cd", '(\w\w\'\w\w)') 

Error: Invalid string literal: '(\w\w\'\w\w)'

我可以通过两种方式解决这个问题。使用原始字符串,或转义:

逃脱逃生:
SELECT REGEXP_EXTRACT("ab'cd", '(\\w\\w\'\\w\\w)')
ab'cd

原始字符串:
SELECT REGEXP_EXTRACT("ab'cd", r'(\w\w\'\w\w)')
ab'cd

关于regex - REGEXP_EXTRACT(word,r'(\w\w\'\w\w)' ) 中的 r 是什么意思,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26829101/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com