我试图从最后的'/‘字符和'_’字符之间提取字符串'c://abcd /abcd/0012湿r_1234567890.csv‘的一部分。
0012湿法
我能从最后的“/”字符中提取出所有的东西
select regexp_extract('c://abcd /abcdef/0012wetr_1234567890.csv', '([^/]*)$');
0012wetr_1234567890.csv
不幸的是,我被困住了,不知道如何进一步分割它。
你的帮助将不胜感激。干杯,A.
发布于 2022-04-22 16:52:02
您可以使用REGEXP_REPLACE方法:
REGEXP_REPLACE('c://abcd /abcdef/0012wetr_1234567890.csv', '.*/([^_]+).*', '$1')见regex演示。
如果没有匹配,则需要将结果保持为空,请在模式的末尾添加|.+:
REGEXP_REPLACE('c://abcd /abcdef/0012wetr_1234567890.csv', '.*/([^_]+).*|.+', '$1')详细信息
.* -除行中断字符以外的任何零或多个字符尽可能多/ -a / char([^_]+) -第1组:除_以外的任何一个或多个字符.* -行的其余部分| -或.+ -任何一个或多个字符,除了行中断字符尽可能多。https://stackoverflow.com/questions/71971020
复制相似问题