Trova e sostituisci

È possibile navigare facilmente all’interno del documento utilizzando una tastiera e un mouse, ma se si dispone di molte pagine per scorrere attraverso, ci vorrà un po ‘per trovare testo specifico in un lungo documento. Sarà più tempo consumando quando si desidera sostituire alcuni caratteri o parole che avete usato nel vostro documento. La funzionalità “Find and sostituire” consente di trovare una sequenza di caratteri in un documento e sostituirlo con un’altra sequenza di caratteri.

Aspose.Words consente di trovare una stringa specifica o un modello di espressione regolare nel documento e sostituirlo con un’alternativa senza installare e utilizzare applicazioni aggiuntive come Microsoft Word. Questo velocizzerà molte attività di digitazione e formattazione, potenzialmente risparmiando ore di lavoro.

Questo articolo spiega come applicare la sostituzione delle stringhe e le espressioni regolari con il supporto dei metacharacter.

Modi per trovare e sostituire

Aspose.Words fornisce due modi per applicare la ricerca e sostituire l’operazione utilizzando i seguenti:

  1. Sostituzione semplice della stringa – per trovare e sostituire una stringa specifica con un’altra, è necessario specificare una stringa di ricerca (caratteri alfanumerici) che verrà sostituita in base a tutte le occorrenze con un’altra stringa di sostituzione specificata. Entrambe le stringhe non devono contenere simboli. Tenere conto che il confronto delle stringhe può essere sensibile al caso, o si può essere incerti di ortografia o avere diverse ortografia simili.
  2. Espressioni regolari – per specificare un’espressione regolare per trovare le partite esatte della stringa e sostituirle secondo la vostra espressione regolare. Si noti che una parola è definita come essere composta da soli caratteri alfanumerici. Se un sostituto viene eseguito con solo parole intere che vengono abbinate e la stringa di input avviene per contenere simboli, allora non si trovano frasi.

Inoltre, è possibile utilizzare metacaratteri speciali con sostituzioni di stringhe semplici e espressioni regolari per specificare le interruzioni all’interno dell’operazione di trovare e sostituire.

Aspose.Words presenta la funzionalità di ricerca e sostituzione con IReplacingCallBack. È possibile lavorare con molte opzioni durante il processo di trovare e sostituire utilizzando FindReplaceOptions classe.

Trova e sostituisci il testo utilizzando la sostituzione di stringa semplice

È possibile utilizzare uno dei Replace metodi per trovare o sostituire una stringa particolare e restituire il numero di sostituzioni che sono state fatte. In questo caso, è possibile specificare una stringa da sostituire, una stringa che sostituirà tutti i suoi eventi, se la sostituzione è caso-sensibile, e se solo parole stand-alone saranno interessate.

Il seguente esempio di codice mostra come trovare la stringa “CustomerName” e sostituirla con la stringa “James Bond”:

È possibile notare la differenza tra il documento prima di applicare la sostituzione semplice della stringa:

before-simple-string-replacement-aspose-words-java

E dopo aver applicato la semplice sostituzione della stringa:

after-simple-string-replacement-aspose-words-java

Trovare e sostituire il testo utilizzando espressioni regolari

Un’espressione regolare (regex) è un modello che descrive una certa sequenza di testo. Supponiamo che si desidera sostituire tutte le doppie occorrenze di una parola con un singolo evento parola. Quindi è possibile applicare la seguente espressione regolare per specificare il modello di doppia parola: ([a-zA-Z]+) \1.

Utilizzare l’altro Replace metodo per cercare e sostituire particolari combinazioni di caratteri impostando il Regex parametro come modello di espressione regolare per trovare le partite.

Il seguente esempio di codice mostra come sostituire le stringhe che corrispondono a un modello di espressione regolare con una stringa di sostituzione specificata:

È possibile notare la differenza tra il documento prima di applicare la sostituzione della stringa con espressioni regolari:

before-replacement-with-regular-expressions-aspose-words-java

E dopo aver applicato la sostituzione della stringa con espressioni regolari:

after-replacement-with-regular-expressions-aspose-words-java

Trovare e sostituire lo stress utilizzando Metacharacters

È possibile utilizzare metacaratteri nella stringa di ricerca o nella stringa di sostituzione se un testo o una frase particolare è composto da più paragrafi, sezioni o pagine. Alcuni dei metacaratteri includono &p per una pausa di paragrafo, &b per una pausa di sezione, &m per una pausa pagina, e &l per una pausa di linea.

Il seguente esempio di codice mostra come sostituire il testo con il paragrafo e l’interruzione della pagina:

È possibile trovare e sostituire il testo nella sezione intestazione/footer di un documento di Word utilizzando il HeaderFooter classe.

Il seguente esempio di codice mostra come sostituire il testo della sezione intestazione nel documento:

È possibile notare la differenza tra il documento prima di applicare la sostituzione della stringa di intestazione:

before-applying-header-string-replacement-aspose-words-java

E dopo aver applicato la sostituzione della stringa di intestazione:

after-applying-header-string-replacement-aspose-words-java

L’esempio di codice per sostituire il testo della sezione del piè di pagina nel documento è molto simile al precedente esempio di codice dell’intestazione. Tutto quello che dovete fare è sostituire le seguenti due linee:

HeaderFooter header = headersFooters.get(HeaderFooterType.HEADER_PRIMARY);
header.getRange().replace("Aspose.Words", "Remove", options);

Con quanto segue:

È possibile notare la differenza tra il documento prima di applicare la sostituzione della stringa di piè di pagina:

before-applying-footer-string-replacement-aspose-words-java

E dopo aver applicato la sostituzione della stringa di piè di pagina:

after-applying-footer-string-replacement-aspose-words-java

Ignora il testo durante la ricerca e sostituzione

Durante l’applicazione dell’operazione trovare e sostituire, è possibile ignorare alcuni segmenti del testo. Così, alcune parti del testo possono essere escluse dalla ricerca, e il trovare e sostituire può essere applicato solo alle parti rimanenti.

Aspose.Words fornisce molte proprietà di trovare e sostituire per ignorare il testo come IgnoreDeleted, IgnoreFieldCodes, IgnoreFields, IgnoreFootnotes, e IgnoreInserted.

Il seguente esempio di codice mostra come ignorare il testo all’interno cancella le revisioni:

Personalizza Trova e sostituisci l’operazione

Aspose.Words fornisce molti diversi properties per trovare e sostituire il testo come l’applicazione di formato specifico con ApplyFont e ApplyParagraphFormats proprietà, utilizzando sostituzioni in modelli di sostituzione con UseSubstitutions proprietà, e altri.

Il seguente esempio di codice mostra come evidenziare una parola specifica nel documento:

Aspose.Words consente di utilizzare il IReplacingCallback interfaccia per creare e chiamare un metodo personalizzato durante un’operazione di sostituzione. Si possono avere alcuni casi di utilizzo in cui è necessario personalizzare l’operazione di trovare e sostituire, come la sostituzione del testo specificato con un’espressione regolare con i tag HTML, in modo da fondamentalmente si applicherà sostituire con l’inserimento di HTML.

Se è necessario sostituire una stringa con un tag HTML, applicare il IReplacingCallback interfaccia per personalizzare l’operazione trovare e sostituire in modo che la partita inizia all’inizio di una corsa con il nodo match del documento. Forniamo diversi esempi di utilizzo IReplacingCallback.

Il seguente esempio di codice mostra come sostituire il testo specificato con HTML:

Il seguente esempio di codice mostra come evidenziare numeri positivi con colore verde e numeri negativi con colore rosso:

Il seguente esempio di codice mostra come prependere un numero di linea ad ogni riga: