description
numaralı bir dize sütununda, '\t'
sekme karakterlerini içerebilen bir kovan tablosunda bu kovanları harici bir uygulamaya bağlarken bazı görünümler karıştırıyor. Bu sütundaki tüm sekme karakterlerinden kurtulmanın basit bir yolu var mı? Bunu yapmak için basit bir python programını çalıştırabilirim ama bunun için daha iyi bir çözüm bulmak istiyorum.kovandaki karakterleri nasıl değiştirebilirim?
cevap
regexp_replace
UDF benim görevi yerine getirir. Apache Wiki'nin tanımı ve kullanımı aşağıdadır.
regexp_replace(string INITIAL_STRING, string PATTERN, string REPLACEMENT):
Bu INITIAL_STRING
REPLACEMENT
örnekleri ile PATTERN
tanımlanan java düzenli ifade sözdizimi maç tüm alt dizeleri değiştirme kaynaklanan dize döndürür,
örn: regexp_replace("foobar", "oo|ar", "")
döner fb
Şu anda buna izin veren OOTB özelliği yok. Bunu başarmanın bir yolu, sizin için bunu yapacak bir özel InputFormat ve/veya SerDe yazmak olabilir. Bu JIRA yararlı olabilir: https://issues.apache.org/jira/browse/HIVE-3751. (doğrudan sorununa bağlı değil).
Özel SerDe bunu yapmanın bir yolu olabilir. Yoksa regex_replace ile arabuluculuk sürecinin çeşit kullanabilirsiniz:
create table tableB as
select
columnA
regexp_replace(description, '\\t', '') as description
from tableA
;
Ayrıca şunu da yapabilirsiniz çeviri kullan(). Üçüncü argüman çok kısasa, ikinci argümandaki karşılık gelen karakterler silinir. Regexp_replace() 'un aksine özel karakterler hakkında endişelenmenize gerek yoktur. Source code.
- 1. Javascript içindeki bir dizgede karakterleri nasıl değiştirebilirim?
- 2. Kovandaki tarih formatı nasıl değiştirilir?
- 3. unix epoch saatini kovandaki tarih dizgisine dönüştürme
- 4. Dize içindeki karakterleri değiştir
- 5. Nasıl Nasıl değiştirebilirim CodeIgniter'da
- 6. ESC karakterleri nasıl tanımlanır?
- 7. Perl'de, bir karakter kümesini tek bir geçişte farklı karakter kümeleriyle nasıl değiştirebilirim? ~ Ve x karakterleri -
- 8. Listenin sınırlarını nasıl değiştirebilirim?
- 9. Python'da saati nasıl değiştirebilirim?
- 10. TVirtualStringTree - [-]/[+] düğmelerini nasıl değiştirebilirim?
- 11. Laravel5 klasörünü nasıl değiştirebilirim?
- 12. Başlangıç sayfasını nasıl değiştirebilirim?
- 13. Başvurumun dilini nasıl değiştirebilirim?
- 14. OrderedDict sırasını nasıl değiştirebilirim?
- 15. Groovy koleksiyonunu nasıl değiştirebilirim?
- 16. JButton görüntüsünü nasıl değiştirebilirim?
- 17. tüm karakterleri
- 18. Xcode4'teki görünmeyenlerin rengini nasıl değiştirebilirim?
- 19. RegEx sonuçlarına karakterleri nasıl eklerim?
- 20. Flex'te sonuç nesnelerini nasıl değiştirebilirim?
- 21. C# ile image.source nasıl değiştirebilirim?
- 22. Varak'da akıllı telefonu nasıl değiştirebilirim?
- 23. UIKeyBoard çerçevesini iOS'ta nasıl değiştirebilirim?
- 24. Vurguda png rengini nasıl değiştirebilirim?
- 25. Bir UIImage'ın doygunluğunu nasıl değiştirebilirim?
- 26. UICollectionView'da kaydırma yönünü nasıl değiştirebilirim?
- 27. Fotoğrafı html olarak nasıl değiştirebilirim
- 28. Sınırları bir movieclip'e nasıl değiştirebilirim
- 29. Krom tarayıcı kısayolunu nasıl değiştirebilirim?
- 30. TemplateInfo.HtmlFieldPrefix'in liste dizinini nasıl değiştirebilirim?
bu regex_replace değil regexp_replace olmalı, şu ana kadar çalışıyor görünüyor – user1745713