Parsing

di il
3 risposte

Parsing

Buongiorno a tutti,

Sto cercando una libreria che mi permetta di definire un linguaggio ( basato su tag, simile ad un markdown ) e di parsare del testo in quel linguaggio. Non vorrei usare ANTLR4 sia perché temo sia troppo avanzata sia perché vorrei che il parser sia dinamico: esempio vorrei poter aggiungere dei tag a runtime. Ho già visto la libreria JTopas solo che l'ultima modifica di quella libreria è avvenuta nel 2005 quindi non sono molto convinto che funzioni a dovere.

Avete dei consigli?

3 Risposte

  • Re: Parsing

    La cosa puo' essere semplice o complicata a piacere.

    1) processare dei tag del tipo [[mmm]] e' abbastanza banale, ti basta ricerca e sostituzione di stringhe
    2) in altrenativa puoi usare l'XML: gia' nativamente l'XML supporta il testo, quindi puoi tranquillamente scrivere "ciccio <tt>ciappilo</tt> ciccio!" ed hai il parser XML gia' disponibile in Java, o ti scarichi una delle N-mila librerie (ad esempio Xerces)
    3) oppure ti puoi implementare un parser ricorsivo discendente tutto tuo

    In alterativa ci sono degli engine un po' piu' raffinati, come "StringTemplate", oppure le librerie che parsano direttamente Markdown, ...

    Insomma, di possibilita' ce ne sono N-mila, devi chiarire che cosa non va bene nelle soluzioni gia' esistenti.
  • Re: Parsing

    Ok, sto definendo un linguaggio per scrivere del testo mediante dei tag stile .tag, questo linguaggio però deve essere facile da scrivere quindi non posso fare dei tag complessi come quelli dell'XML. Questi verranno poi tradotti in HTML.

    Per rispondere non c'è nulla che non va con le soluzioni già esistenti è solo che non so quale scegliere per creare un linguaggio del genere. Inizialmente pensavo di implementare un parser tutto mio. Sperando di trovare delle librerie simili a boost.spirit per il C++.
  • Re: Parsing

    Guarda come funziona Sphinx

    http://www.sphinx-doc.org/en/stable
Devi accedere o registrarti per scrivere nel forum
3 risposte