Domanda

Ho un enorme file txt e un elenco di URL di Editpad Pro con immagini nella cartella principale.

http://www.othersite.com/image01.jpg
http://www.mysite.com/image01.jpg
http://www.mysite.com/category/image01.jpg

Come posso cambiare solo quelli che hanno immagini sulla radice usando regexp?

http://www.othersite.com/image01.jpg
http://www.NEW_WEBSITE.com/image01.jpg
http://www.mysite.com/category/image01.jpg

Sto utilizzando l'app online RegExr .

È stato utile?

Soluzione

Cerca e sostituisci (senza distinzione tra maiuscole e minuscole, espressione regolare):

http://www\.mysite\.com/([^/]*\.(?:jpg|gif|png))

con:

http://www\.NEW_WEBSITE\.com/\1

Modifica

E sì, questo ricondizionerà anche i file come http://www.mysite.com/.jpg , se tali file o directory esistono. Se a qualcuno non piace, sostituisci * con + - o con {X,} se il tuo presupposto è che < em> un file di immagine richiede almeno un nome di carattere X s ecc. ecc. - ma davvero , questo è probabilmente al di fuori dell'ambito di ciò che lab72 sta cercando di ottenere (ovvero non convalida del nome del file immagine.)

Altri suggerimenti

url1.replace(/((https?:\/\/www.?)(\w*?)(.com\/image\d*?\.(png|gif|jpg))/, 
             "$1newName$3");

Qualcosa di simile a quanto sopra dovrebbe funzionare. Il codice è in AS (non compilato però: P) Nota che $ 2 corrisponde al nome del sito che stiamo sostituendo con yoursite .

Sostituire

http://www\.mysite\.com/image(.*)

con

http://www.newsite.com/image$1

Detto questo, potresti anche essere interessato a un discreto editor di testo . Quell'applet flash è davvero schifoso. Puoi comunque usare lo stesso regexp, anche se dovrai sostituire il simbolo del dollaro $ con una barra rovesciata \ .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top