在Oracle中工作的Regex在Spark SQL中不工作

9nvpjoqh  于 7个月前  发布在  Apache
关注(0)|答案(1)|浏览(52)

我有一个带replace函数的正则表达式,它在SQL和Oracle中工作:regexp_replace(product_name, '\s+\-.*', '')
但它在Spark SQL中不起作用-看起来,匹配不起作用:
REGEXP_REPLACE(product_name, '\\s+\\((-.*)\\)', '')
我如何正确地编写它以获得相同的结果?在SQL与Oracle中,我已经将搜索字符串替换为'',但在Spark SQL中什么也没发生
我尝试在Spark SQL中通过regexp_extract查找正则表达式,结果得到了空值
更新:我几乎已经通过使用' \ -.'解决了这个问题。问题仍然是当我的字符串周围有白色空格时-我怎么能只接受字符串?

ep6jt1vc

ep6jt1vc1#

解决方案:\ -.* 工作像预期的最后-谢谢大家!

相关问题