带有正则表达式的 SQL 过程中的两个反斜杠

我正在处理一个 SQL 过程,在那里我遇到了一个包含此部分的正则表达式 -

REGEXP '\\s*count\\s*\\('

我不明白为什么有两个反斜杠?从这段代码中可以推断出什么。

haha004 回答:带有正则表达式的 SQL 过程中的两个反斜杠

反斜杠在多个级别进行处理。

它是正则表达式中的转义前缀:它使像 .( 这样的特殊字符按字面意思处理,并用于创建像 \s 这样的转义序列(这意味着任何空白字符).

但它也是字符串文字中的转义前缀,用于诸如 \n(换行符)和 \b(退格符)之类的东西。因此,为了让正则表达式字符获得文字反斜杠,您需要对反斜杠本身进行转义。

这在许多编程语言中很常见,尽管有一些具有不处理转义序列的“原始字符串文字”,特别是为了避免将斜杠加倍。

本文链接:https://www.f2er.com/1145688.html

大家都在问