Java'da html benzeri bir biçimlendirme dilinin çok basitleştirilmiş bir sürümü için hızla bir çözümleyici oluşturmam gerekiyor. Pitonda, bunu yapmak için pyparsing kütüphanesini kullanırdım. Java için benzer bir şey var mı? Lütfen, html ayrıştırma için zaten orada kütüphaneler önermeyin, benim uygulama bir nesne ağacı yürüyüş ve ziyaretçi desen kullanarak metin serileştirme gösterecek bir okul ödevi olduğunu, bu yüzden burada gerçek dünya terimleri düşünmüyorum. Temel olarak tüm ihtiyacım olan etiketler, öznitelikler ve metin düğümleri.Java'da pyparsing'e benzer bir kitaplık var mı?
cevap
başka iyi ayrıştırıcı jeneratör ANTLR olduğu , aradığınız şey bu olabilir.
Java'da el işçiliği için oldukça fazla seçenek var. Belki de çok basit java.util.Scanner
ve java.util.StringTokenizer
Sınıfları sizin için yararlıdır?
Diğer iyi bir seçim belki de the org.apache.commons.lang.text
kütüphanesidir. http://commons.apache.org/lang/apidocs/org/apache/commons/lang/text/package-summary.html
Kullanımınız için aşırı miktarda kullanılabilir, ancak javacc mükemmel bir endüstriyel dayanıklı çözümleyici üretecidir. Bu programı/kütüphaneyi birkaç kez, güvenilir ve öğrenmeye değer, özellikle de dil ve derleyicilerle çalışacaksanız kullandım.
Java derleyicisi Derleyici [tm] (JavaCC [tm]) Java [tm] uygulamalarda kullanılmak için en popüler ayrıştırıcı jeneratör olduğunu: İşte yukarıda listelenen web sitesinden programın açıklaması bu. Ayrıştırıcı oluşturucu, dilbilgisi belirtimini okuyan ve dilbilgisi ile eşleşmeleri tanıyan bir Java programına dönüştüren bir araçtır. ayrıştırıcı jeneratör kendisine ek olarak, JavaCC vb (JJTree adında bir araç JavaCC ile birlikte yoluyla) ağaç bina, eylemler, ayıklama gibi ayrıştırıcı üretimi ile ilgili diğer standart özellikleri sağlar
JParsec'i (Torsten sayesinde keşfettiğim) seviyorum çünkü kod üretmiyor. . :-) Belki daha az verimli, ancak küçük görevler için yeterli.
Benzer kitaplığı, JTopas bulundu.
Java Source numaralı telefondan ayrıştırıcının (üreteçlerin) iyi bir listesi vardır.
- 1. Java için lxml veya nokogiri'ye benzer bir kitaplık var mı?
- 2. regexp_like benzer işlev var mı?
- 3. Javascript'te gsub'a benzer bir şey var mı?
- 4. Java'da WebClient.DownloadString'e benzer bir şey var mı?
- 5. MATLAB'de herhangi bir paylaşılan kitaplık oluşturma deneyimi var mı?
- 6. IntelliJ'de bir kitaplık yöntemini "kullanımdan kaldırmanın" bir yolu var mı?
- 7. Adobe'nin Microsoft'un BizSpark'ına benzer bir başlangıç programı var mı?
- 8. JavaScript veya jQuery'nin Excel'in VLOOKUP'una benzer bir işlevi var mı?
- 9. java Dünya kereviz benzer bir görev kuyruğu var mı?
- 10. İlkbaharda Grails Domain özellikleri alanına benzer bir şey var mı?
- 11. Webmatrix'e benzer bir Visual Studio renk düzeni var mı?
- 12. Access 2007 Bölme Formuna benzer bir .NET denetimi var mı?
- 13. Tropo'ya benzer herhangi bir hizmeti bilen var mı?
- 14. Angularjs jQuery'nin ajaxSetup'ına benzer bir şey var mı?
- 15. Python'da PHP'nin SimpleXML'sine benzer bir şey var mı?
- 16. Go, lambda ifadeleri veya benzer bir şey var mı?
- 17. Python Sayacı işlevine benzer bir Javascript işlevi var mı?
- 18. 'Dist' ile benzer herhangi bir maven hedefi var mı?
- 19. Java'nın Swift'in willSet & didSet yöntemlerine benzer özellik gözlemcileri var mı?
- 20. Diğer diller/IDE'ler için Clone Detective'e benzer araçlar var mı?
- 21. C++ 's Boost kitaplığına benzer C kütüphanesi kaynakları var mı?
- 22. Ben buna benzer bir ActiveRecord sınıf var
- 23. Yazıcı ile javada dizileri kullanma
- 24. iOS ve Android'de yerel olarak çağrılabilen haxe'de bir kitaplık oluşturmanın bir yolu var mı?
- 25. Intellij IDEA'da başvurulan bir jar (kitaplık) kullanımını görüntülemenin bir yolu var mı?
- 26. Python: yığın izlerini kitaplık koduna ayıklar mı?
- 27. PBKDF2'nin bir SQL uygulaması var mı?
- 28. Bir iPad popover'ına benzer bir şey sağlamak için bir iPhone kütüphanesi var mı?
- 29. Herhangi bir getNLMultibutton kitaplığı var mı?
- 30. shazam özelliği var mı?
JavaCC, AWESOME'dur. Ayrıca Tom Copeland (Centennial Books) kitabından da faydalanın. –