2013-08-27 22:50:27 +0000 2013-08-27 22:50:27 +0000
18
18
Advertisement

Utilizzo della ricerca per caratteri jolly/sostituire in Notepad++

Advertisement

Ecco il mio problema: in un . txt, devo trovare e sostituire migliaia di istanze di sintassi come questa:

(vedi (a053007djfggspwdf))

o

(vedi (a053007djffgspwdf) e (a54134xsedgeg))

o

(vedi (a053007djffgspwdf), (a9554xsdfgsdfg) e (a54134xsedgeg))

C'è molta varietà tra l'inizio (vedi (a e la fine )) stringhe di testo. Questo può essere impostato in Notepad+++ usando regex? Se sì, come potrei farlo? Grazie!

Advertisement

Risposte (5)

18
18
18
2016-03-02 12:14:25 +0000

Scusate gente, ma trovo complicate altre risposte. (Non voglio mancare di rispetto ai poster originali.)

Poiché questo si presenta sempre come il primo risultato della ricerca, lo aggiungo in:

  1. 1. Aprire la finestra di ricerca/sostituisci (CTRL+F e poi la scheda sostituisci)
  2. 2. Spuntate “Regular Expression” in basso
  3. Utilizzare .* come jolly

Per esempio, volevo rimuovere tutte le istanze di abp=“1314”, abp=“1313”, abp=“1312” etc (fondamentalmente i numeri sono tutti diversi, ecco perché si vuole un jolly per eliminarli).

Nella finestra di dialogo sostituisci:

Trova in cosa: abp=".*" Sostituisci con:

(Stai sostituendo qualsiasi cosa all'interno di quelle virgolette con niente per sbarazzartene)

Fonte: https://www.organicweb.com.au/17226/general-technology/notepad-wildcard/

15
15
15
2013-08-27 23:09:56 +0000

Sì che può! Notepad++ ha un modo di ricerca RegEx che potete selezionare per tutte le vostre esigenze di sostituzione RegEx.

L'esempio seguente è un sostituto di base per qualsiasi cosa tra (see (a...)) con l'eccezione di un'interruzione di linea. Potrebbe essere necessario modificare il RegEx o scrivere il proprio per adattarlo alle proprie esigenze. Ecco un ottimo posto per aiutarvi a sperimentare.

RegEx: \(see \(a.+\)\)

Corde abbinate:

(see (a053007djfgspwdf))
(see (a053007djfgspwdf) and (a54134xsedgeg))
(see (a053007djfgspwdf), (a9554xsdfgsdfg) and (a54134xsedgeg))

1
Advertisement
1
1
2016-03-24 15:43:35 +0000

Poiché alcuni di questi erano troppo profondi per poterli capire, lasciate che vi mostri ciò che ho fatto dopo aver letto tutte queste soluzioni e altro ancora per poter finalmente comprendere meglio. (questo è un approccio semplice, potrebbe non essere il migliore)

Volevo rimuovere tutti i miei figura elementi su tutta la pagina web. Figure 2.1,Figura 1.1,ect.

Era:

<p class="td1-content b8"><span class="stepNumber">2. </span>Select Memo from the toolbar<br><b>Figure 2.1</b></p>

Volevo che finisse:

<p class="td1-content b8"><span class="stepNumber">2. </span>Select Memo from the toolbar</p>
``` &001 


Ma ogni 


aveva un numero di Figura diverso, così ho usato questo nel sublime testo 2. 


1. ctrl H 
2. cliccare il simbolo ".\*" in basso a destra del testo sublime 2, (regex) 
3. digitare `<br><b>Figure.*</b>` 
4. sostituire con: -sinistra vuoto 


Questo ha sostituito tutti i miei casi con cifre. nota ho usato .\* dove sarebbero stati i numeri. Spero che questo sia d'aiuto.
1
1
1
2013-08-28 16:51:42 +0000

Provate questo modello: \(see \(a(.*)\) e assicuratevi di aver “. match newline” non spuntato e “wrap around” controllato.

0
Advertisement
0
0
2013-09-03 05:05:59 +0000

L'esatto regex di cui avreste bisogno è:

\(see \(\w+\)((, \(\w+\))*( and \(\w+\)))?\)

Ad esempio:

Selezionando Trova tutto nel documento corrente, il risultato sarebbe:

Potete semplicemente usare Sostituisci secondo le vostre necessità.

Se volete includere anche il a nel regex, potete usare:

\(see \(a\w+\)((, \(a\w+\))*( and \(a\w+\)))?\)
Advertisement
Advertisement