在Spark SQL中用反斜杠替换REGEXP

在Spark SQL中用反斜杠替换REGEXP,sql,apache-spark-sql,regexp-replace,Sql,Apache Spark Sql,Regexp Replace,我有一个包含\s\关键字的字符串。现在,我想用NULL替换它 select string,REGEXP_REPLACE(string,'\\\s\\','') from test 但无法替换为spark sql中的上述语句 输入:\s\help 输出:帮助 要使用regexp\u replace来替换实际字符串中的一个\,您需要在regexp\u replace的模式中使用\\\\\(4个反斜杠)。请务必查看以了解为什么需要4个反斜杠来替换一个反斜杠 因此,所需的声明如下所示 select n

我有一个包含\s\关键字的字符串。现在,我想用NULL替换它

select string,REGEXP_REPLACE(string,'\\\s\\','') from test
但无法替换为spark sql中的上述语句

输入:\s\help 输出:帮助


要使用regexp\u replace来替换实际字符串中的一个
\
,您需要在
regexp\u replace
的模式中使用
\\\\\
(4个反斜杠)。请务必查看以了解为什么需要4个反斜杠来替换一个反斜杠

因此,所需的声明如下所示

select name, regexp_replace(name, '\\\\s\\\\', '') from test
下面的屏幕截图有一些例子,以便于更好地理解


要替换实际字符串中的一个
\
,需要在
regexep\u replace
的模式中使用
\\\\
(4个反斜杠)。请务必查看以了解为什么需要4个反斜杠来替换一个反斜杠

因此,所需的声明如下所示

select name, regexp_replace(name, '\\\\s\\\\', '') from test
下面的屏幕截图有一些例子,以便于更好地理解


(1)您使用的是什么数据库?(2)
NULL
不是字符串中可以替换的内容。(3) 是否要
replace()
?我想用一个空格替换。我正在使用sparksql。只有regexp_replace可用。您尝试过用空字符串替换它吗?是的,Jake。它正在失败。执行SQL命令时出错:从测试中选择字符串、REGEXP_REPLACE(字符串“\\s\\”、“”)。无效操作:找到不完整的转义序列。解析正则表达式时出错:在注释中,
s
后面有两个反斜杠,在问题中只有一个。这里有一个显著的区别,在你逃避你的
的问题上,这肯定会打破它。(1)你使用的是什么数据库?(2)
NULL
不是字符串中可以替换的内容。(3) 是否要
replace()
?我想用一个空格替换。我正在使用sparksql。只有regexp_replace可用。您尝试过用空字符串替换它吗?是的,Jake。它正在失败。执行SQL命令时出错:从测试中选择字符串、REGEXP_REPLACE(字符串“\\s\\”、“”)。无效操作:找到不完整的转义序列。解析正则表达式时出错:在注释中,
s
后面有两个反斜杠,在问题中只有一个。这里有一个显著的区别,在你逃避你的
的问题上,这肯定会打破它。