Vuoi qualche consiglio su come strutturare il mio programma di editing di testo

0

Voglio creare un piccolo programma a riga di comando che cerchi una parola o una frase in un file .txt di destinazione. o .docx, stampa un blurb corrispondente su quella frase e poi lo sostituisce con una parola / frase diversa. Ci sono circa 200 di queste tuple.

Qual è il modo migliore per strutturarlo? Sto pensando di inserire queste informazioni in un file di testo e di scrivere il codice per leggerlo. O dovrei semplicemente scrivere tutto nel programma?

Sto anche pensando di creare una classe per ogni tupla con tre campi che memorizzano queste informazioni.

È un buon approccio o ci sono modi migliori?

PS: Sto pensando di usare Java per questo a meno che qualcuno non possa suggerire Python per una ragione particolare.

    
posta user3724404 05.07.2016 - 16:29
fonte

1 risposta

1

Il modo in cui interpreto la tua idea:

Hai circa 200 stringhe che vuoi cercare nel tuo target .txt

  1. Trova una di queste stringhe fornite
  2. Fornisci all'utente (?) un tipo di feedback
  3. Sostituiscila con qualche altra stringa

Entrambe le stringhe restituite nei passaggi 2 e 3 sono mappate sul contenuto esatto della stringa trovata nel passaggio 1, cioè:

'a' found -> print 'a_feedback', put 'a_replace'
'b' found -> print 'b_feedback', put 'b_replace'

Carica le rispettive tuple di stringhe da una sorgente di tipo .txt e memorizzale, ciascuna nel proprio oggetto di una classe

personalizzata

Grande!

Hai una soluzione in corso! Java è probabilmente un buon modo per farlo, ma non vedo perché Python debba essere disattivato. Vai con quello che usi più sicuro.

Ti suggerisco anche di andare avanti con il tuo piano per separare la tua sorgente di testo dal codice. Dato che avrai una grande quantità di tuple di testo distinte, non ha senso inserirle nel tuo codice sorgente, sarà solo disordinato.

Potresti trovare una sorta di semplice struttura personalizzata per archiviare i tuoi dati nel .txt e quindi usare regex per trovare e analizzare ogni tupla, tuttavia, ti suggerirei di utilizzare un modo più convenzionale di memorizzare i dati. I miei suggerimenti:

  • Per semplicità: INI
  • Per qualcosa di semplice ma veramente utile: JSON
  • Per ampia usabilità ed espandibilità: XML

Per memorizzare le tue tuple quando vengono caricate nel programma principale, gli oggetti sono la strada da percorrere. Penso che una classe personalizzata per questo tipo di tupla suona come un buon piano, ma potresti anche giocare con le mappe per mappare il tasto -string al suo feedback e sostituire i valori, rispettivamente.

    
risposta data 05.07.2016 - 18:28
fonte