我有一些输入信息,我正试图删除部分 .0
从id字符串以 .0
. select student_id, regexp_replace(student_id, '.0','') from school_result.credit_records where student_id like '%.0';
输入:
01-0230984.03
12345098.0
34567.0
预期产量:
01-0230984.03
12345098
34567
但我得到的结果如下:它删除了任何具有 0
而不是只删除以 .0
```
0129843
123498
34567
我做错什么了?有人能帮忙吗?
1条答案
按热度按时间46scxncf1#
regexp中的点有特殊的含义(它表示任何字符)。如果你需要点(.)字面上,它应该被屏蔽使用双斜杠(在Hive)。同时添加线端锚点($):
结果:
正则表达式
'\\.0$'
表示点零(.0
)从字面上说,这条线的尽头($
).