sql—用于提取字符串片段的单个配置单元查询

zzwlnbp8  于 2021-05-27  发布在  Hadoop
关注(0)|答案(2)|浏览(289)

我有这样一个列数据“testdata” "NEW //testapp/v1 POST/6.0" 我想把输出检索为 "//testapp/v1" 我可以从一开始检索数据 (//testapp/v1 POST/6.0) 这样地 select regexp_extract(testdata,'^(.*?)(?:/)(.*)$', 2) from tablename; 但是不知道如何在同一个查询中删除post/6.0部分。有人能帮上忙吗?

irtuqstp

irtuqstp1#

你可以从第一个斜杠开始,把所有的东西都拿走,直到下一个空格:

regexp_extract(testdata, '(/[^\\s]+)', 0)
8gsdolmq

8gsdolmq2#

请尝试下列任一操作

regexp_extract(testdata,'\\S+', 0, 2)
regexp_extract(testdata,'/\\S+', 0)
regexp_extract(testdata,'\\s+(\\S+)', 1)

相关问题