Anladığım kadarıyla, belirli bir belgede e-postaları tararken Regex en iyi şey değildir. Bunun için alternatifler olup olmadığını merak ediyorum? Ya da habersiz bazı en iyi uygulama yolu?Ruby - Metin veya html'den e-postaları ayrıştırma
cevap
Ayrıştırma işleri için kütüphanelere güvenmek her zaman iyi bir fikirdir. Sen bir kütüphane, her zaman farklı durumlarda göz önüne alındığında, normal ifadenin daha ayrıntılı olarak sorunu ele olacak vb
e-postaları ayrıştırmak için bir Ruby kütüphanesi Mail geçerli:
-postanın içeriğinden erişilen nasıl bir örnektir.Posta bir internet olduğunu Ruby için kütüphane nesil, , ayrıştırmak ve basit, rubyesque bir şekilde göndermek için tasarlanmıştır.
[...] Posta gerçekten ne yaptığınızı biliyor eğer, ayrıştırma e-posta iletilerini açılır çok basit bir nesne yönelimli sistemi ile dizayn edilmiştir, sen her geçen biraz oynama işini senin Doğrudan e-posta. Aynı zamanda bir çok parçalı e-posta yanı sıra testi ayrıştırmak ve ekleri ayıklamak sağlar
mail = Mail.read('/path/to/message.eml') mail.envelope.from #=> '[email protected]' mail.from.addresses #=> ['[email protected]', '[email protected]'] mail.sender.address #=> '[email protected]' mail.to #=> '[email protected]' mail.cc #=> '[email protected]' mail.subject #=> "This is the subject" mail.date.to_s #=> '21 Nov 1997 09:55:06 -0600' mail.message_id #=> '<[email protected]>' mail.body.decoded #=> 'This is the body of the email...
: Burada
Sadece bu tür her yerde gördüğüm gibi bir şey görmedim ve '@my_subject_variable = mail.envelope.from' gibi bir şey değil, sadece iyi bir kopyalama ve yapıştırma işi mi, yoksa herkesin aynı örneği kullanmasının bir sebebi var mı? –
@HerbMeehan Örnek, deponun README dosyasından alınmıştır. Kesinlikle, önerdiğiniz şekilde kullanabilirsiniz. –
- 1. Javascript ile metin ayrıştırma
- 2. Ayrıştırma JSON veya JavaScript
- 3. ayrıştırma json Farklı kaynaklara baktım Ruby
- 4. Angularjs veya AND'yi ayrıştırma veya sorgulama
- 5. Metin alanına Ruby on Rails
- 6. Metin karşılaştırması için Ruby gem
- 7. Ayrıştırma büyük (20GB) metin dosyası - 1
- 8. Bir metin dosyasındaki anahtar değer çiftlerini ayrıştırma
- 9. ayrıştırma e-posta adresleri "den" bir emaille Ruby
- 10. Yakut veya hash in Ruby
- 11. Metin, div veya paragraf
- 12. Ruby Arrays veya Hashes'ı Optimize Etme
- 13. Ruby regex: tırnak işaretleri arasında metin ayıkla
- 14. YAML ayrıştırma - lex veya el yapımı?
- 15. Bir liste veya tabloya html ayrıştırma
- 16. Ruby: eşittir neden eşit regexp neden ayrıştırma hatası neden olur?
- 17. Ruby ve Java arasında protobuf nesnesini serileştirme/ayrıştırma nasıl yapılır?
- 18. Python (pyparsing) içinde yapılandırılmış bir metin dosyası ayrıştırma
- 19. GitLab'da kod veya metin ara
- 20. Google Datastore - Blob veya Metin
- 21. Ruby/Rails'deki Yapay Zeka veya Bot
- 22. C1 veya C2 kapsama alanı için ruby
- 23. Ruby Mongo veya Mongoid eşzamanlılık sorunu
- 24. Raylarda Dize Verilerini Ayrıştırma
- 25. R ve rb modunda bir metin dosyasını ayrıştırma arasındaki fark
- 26. İkili eki ve metin dönüşümü ayıklama MIME posta ayrıştırma
- 27. Ruby & Ruby on Rails
- 28. (Ruby, Rails) (Ruby, Rails)
- 29. Ruby Ruby eşdeğeri Python
- 30. Kullanıcı Girişi + Ruby + Regex?
Belgede e-posta nasıl görünüyor? –
Neden bir regex kullanmıyorsunuz? İnsanlar çok uzun süre e-postaları tanımlayan regeekslere karşı dizeleri test ediyorlar. –
"E-postalar" ile ne demek istediğinizi tanımlayın. E-posta mesajları, ile Kime:/Kimden:/Konu: üstbilgiler? E-mail adresleri? Hangisi olursa olsun, sorunuzu güncelleyin ve daha açıklayıcı olun. Ayrıca, ayıklamak istediğiniz hedef veriler dahil olmak üzere, taranacak metnin örneklerini gösterin. –