在数字之前提取前几个字母并跳过其余部分
Extract first few alphabets before numbers and skip the rest
我有一个奇怪的要求,我们想要提取字符串中的前几个字母并跳过其余可能有字母和数字组合的部分。
例如
文字
1. aaaa bbbb ccc 00110011 ddd eee ff 00 99
2. bbbbbbbbbbbbbbbbbbbbbb 0123 azbe 999999999999999
3. zfsfzzzzzzzzzz asasas 111 3333333 xxysys ddddd 9090909
4. Returns the nth field within a delimited string 5555555555 99999999
输出
1. aaaa bbbb ccc
2. bbbbbbbbbbbbbbbbbbbbbb
3. zfsfzzzzzzzzzz asasas
4. Returns the nth field within a delimited string
我们正在使用 Hue/Impala 并希望提取第一个字符中的所有字母或数字字符串开始之前的所有左侧字符。
谢谢
如果您能够使用正则表达式(因为您将其作为标记放入),您可以使用以下内容(匹配直到数字):
^[^0-9]*
我认为 regexp_extract()
应该可行:
select regexp_extract(col, '^[a-zA-Z ]+', 0)
我有一个奇怪的要求,我们想要提取字符串中的前几个字母并跳过其余可能有字母和数字组合的部分。
例如
文字
1. aaaa bbbb ccc 00110011 ddd eee ff 00 99
2. bbbbbbbbbbbbbbbbbbbbbb 0123 azbe 999999999999999
3. zfsfzzzzzzzzzz asasas 111 3333333 xxysys ddddd 9090909
4. Returns the nth field within a delimited string 5555555555 99999999
输出
1. aaaa bbbb ccc
2. bbbbbbbbbbbbbbbbbbbbbb
3. zfsfzzzzzzzzzz asasas
4. Returns the nth field within a delimited string
我们正在使用 Hue/Impala 并希望提取第一个字符中的所有字母或数字字符串开始之前的所有左侧字符。
谢谢
如果您能够使用正则表达式(因为您将其作为标记放入),您可以使用以下内容(匹配直到数字):
^[^0-9]*
我认为 regexp_extract()
应该可行:
select regexp_extract(col, '^[a-zA-Z ]+', 0)