我想写一个通过shell脚本执行的hql查询。查询的主要目的是数据不应包含除a-z、0-9、空格以外的任何字符,以及除逗号、安培、破折号、@ #/分号、冒号以外的特殊字符。
请找到我用来实现我的要求的查询,虽然我不是100%成功。
select REGEXP_REPLACE(REGEXP_REPLACE(Name,'[^a-zA-Z \\-\\\']',''),'^[\\-\\\' ]*','')
from source_table
请找到我用来测试的样品。
'Proa$$%%'
'$%$%&'
'$*&%$'
',&-“#/;:$'
'XYZ.'
预期输出为:
'Proa'
'&'
'&'
',&-“#/;:’'
'XYZ'
2条答案
按热度按时间ctzwtxfj1#
试试这个
($|/$/|/.|/%|/*)
正则表达式。例子:`
输出。
上面的查询你可以用
hive -e
保留在shell脚本中。更新:
输出。
egmofgnx2#
我对我的脚本做了唯一的修改,就是我在上面加了两个字,而不是"/",请看下面的内容。
以上代码在我的shell脚本中工作正常。
问题已经解决。