Извлеките первые несколько алфавитов перед числами и пропустите остальные - PullRequest
1 голос
/ 31 мая 2019

У меня есть странное требование, когда мы хотим извлечь первые несколько алфавитов в строку и пропустить остальные, где может быть комбинация алфавитов и чисел.напримерТекст

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 и хотели бы извлечь все алфавиты из первых или всех левых символов до начала числовой строки.

Спасибо

Ответы [ 2 ]

1 голос
/ 31 мая 2019

Я думаю regexp_extract() должно работать:

select regexp_extract(col, '^[a-zA-Z ]+', 0)
1 голос
/ 31 мая 2019

Если вы можете использовать регулярное выражение (поскольку вы вводите его в качестве тега), вы можете использовать следующее (для совпадения до числа):

^[^0-9]*
...