Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix
HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix
Un proiettore economico, che fa della portabilità e immediatezza i suoi punti di forza. Adatto per una camera da letto o per la casa vacanze, è basato su sistema proprietario Linux ma offre piena compatibilità ufficiale a Netflix
ASUS ProArt GoPro Edition è il notebook compatto per chi crea
ASUS ProArt GoPro Edition è il notebook compatto per chi crea
Un notebook sviluppato in collaborazione con GoPro ma che risponde al meglio alle necessità di tutti coloro che creano contenuti video: robustezza, design, potenza di calcolo e funzionalità si abbinano al meglio tra di loro, pur se a prezzo di un costo elevato per via della tanta memoria onboard
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090
Ho affidato ai due modelli lo stesso mestiere ma non lo stesso identico prompt: trasformare una storia illustrata in un video usando una RTX 3090 e modelli locali. Ne sono usciti due film, due applicazioni e due idee opposte di efficienza. Fucina, progettata con Fable 5, colpisce di più nei primi secondi. Storyboard Studio, costruito con ChatGPT/Codex, regge meglio sulla distanza e vince il confronto complessivo, ma di stretta misura
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 21-08-2010, 18:03   #1
cdere
Senior Member
 
L'Avatar di cdere
 
Iscritto dal: Feb 2001
Città: Foggia
Messaggi: 2519
[RegularExpressionPython] Semplice sostituizione

Salve ragazzi!
come fare per sostituire in python tramite le regular expression:

Codice:
parola -> parole
Parola -> Parole
????

e ad esempio, per sostituire la 3 lettera di ogni parola come si fa?

grazie mille!
__________________
mi sembra di essere tornato adolescente ai bei tempi.. che figata essere di nuovo su questo forum
cdere è offline   Rispondi citando il messaggio o parte di esso
Old 21-08-2010, 21:48   #2
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Quote:
Originariamente inviato da cdere Guarda i messaggi
Salve ragazzi!
come fare per sostituire in python tramite le regular expression:

Codice:
parola -> parole
Parola -> Parole
????

e ad esempio, per sostituire la 3 lettera di ogni parola come si fa?

grazie mille!
Allora per fare il match dell'ultima lettera di una parola puoi usare questa regex
Codice:
/.$/
Mentre per catturare la terza lettera puoi usare questa
Codice:
/(?<=.{2})./
Le puoi usare in un replace, io non ho mai usato python ma sicuramente ha funzione per fare il replace dando come parametro una regex.
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 12:08   #3
cdere
Senior Member
 
L'Avatar di cdere
 
Iscritto dal: Feb 2001
Città: Foggia
Messaggi: 2519
ottimo grazie mille, sai consigliarmi un manuale su cui posso farmi una minima cultura?

grazie!
__________________
mi sembra di essere tornato adolescente ai bei tempi.. che figata essere di nuovo su questo forum
cdere è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 12:11   #4
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Un manuale no, ma qui puoi già trovare una buona dose di informazioni!
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 14:23   #5
cdere
Senior Member
 
L'Avatar di cdere
 
Iscritto dal: Feb 2001
Città: Foggia
Messaggi: 2519
Quote:
Originariamente inviato da MEMon Guarda i messaggi
Allora per fare il match dell'ultima lettera di una parola puoi usare questa regex
Codice:
/.$/
MEMon scusa, ma quella regex mi fa il match dell'ultima lettera della stringa, a me serve dell'ultima parola
__________________
mi sembra di essere tornato adolescente ai bei tempi.. che figata essere di nuovo su questo forum
cdere è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 15:45   #6
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Quote:
Originariamente inviato da cdere Guarda i messaggi
MEMon scusa, ma quella regex mi fa il match dell'ultima lettera della stringa, a me serve dell'ultima parola
Che vuol dire dell'ultima parola? L'ultima parola di che?
Sii più chiaro.
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 15:52   #7
cdere
Senior Member
 
L'Avatar di cdere
 
Iscritto dal: Feb 2001
Città: Foggia
Messaggi: 2519
hai ragione, scusami:

Codice:
str = parola parola parola parola parola
__________________
mi sembra di essere tornato adolescente ai bei tempi.. che figata essere di nuovo su questo forum
cdere è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 15:53   #8
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Quote:
Originariamente inviato da cdere Guarda i messaggi
hai ragione, scusami:

Codice:
str = parola parola parola parola parola
Quindi la tua richiesta è di voler fare il macth dell'ultima lettera di ogni parola in una stringa?
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 16:01   #9
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Quote:
Originariamente inviato da MEMon Guarda i messaggi
Quindi la tua richiesta è di voler fare il macth dell'ultima lettera di ogni parola in una stringa?
Se la tua richiesta è quella qui sopra puoi usare questa
Codice:
/\w(?=[^\w]|$)/
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 16:03   #10
cdere
Senior Member
 
L'Avatar di cdere
 
Iscritto dal: Feb 2001
Città: Foggia
Messaggi: 2519
esatto

ho fatto questo:
http://regexr.com?2s0tg ma come puoi vedere mi mette anche le parole che hanno come separator / oppure : !!

grazie ancora
__________________
mi sembra di essere tornato adolescente ai bei tempi.. che figata essere di nuovo su questo forum
cdere è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 16:08   #11
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Quote:
Originariamente inviato da cdere Guarda i messaggi
esatto

ho fatto questo:
http://regexr.com?2s0tg ma come puoi vedere mi mette anche le parole che hanno come separator / oppure : !!

grazie ancora
Ok se ti interssa pure quello allora usa questa
Codice:
/\w(?=\s|$)/
Questa ti prende solo le parole contenute fra degli "spazi".
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 16:11   #12
cdere
Senior Member
 
L'Avatar di cdere
 
Iscritto dal: Feb 2001
Città: Foggia
Messaggi: 2519
che dire grazie mille, non so come tu faccia!
io mi sento davvero spaesato...
__________________
mi sembra di essere tornato adolescente ai bei tempi.. che figata essere di nuovo su questo forum
cdere è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 16:12   #13
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Quote:
Originariamente inviato da cdere Guarda i messaggi
che dire grazie mille, non so come tu faccia!
io mi sento davvero spaesato...
Prego, tranquillo è solo questione di impratichirsi un attimo.

Comunque visto che credo ti interessi, la regex in questione fa questo:
  1. \w prende tutte i caratterri alfanumerici, quelli che normalmente compongono una "parola" per così dire
  2. \s|$ fa il match di uno "spazio" o del fine stringa(nel caso la parola sia l'ultima della stringa)
  3. (?=) questo si chiama "Positive lookahead", in pratica fa il match di quello che lo procede, ma senza catturare quello che sta dentro alle tonde
  4. quindi \w(?=\s|$) cattura tutti i caratteri alfanumerici che sono seguiti da uno spazio o è l'ultimo carattere disponibile, senza però catturare gli spazi.

Ultima modifica di MEMon : 22-08-2010 alle 16:18.
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 16:19   #14
cdere
Senior Member
 
L'Avatar di cdere
 
Iscritto dal: Feb 2001
Città: Foggia
Messaggi: 2519
ok il risultato definitivo per me sembra essere questo:

\w(?=\s|$|\]|,|\.)

ma c'è un modo di sostituire |\]|,|\. con ad es. un character set tipo \d per i digits? (cioè un set che riporta tutti i segni di punteggiatura ecc...)

no vabbè è solo una sega mentale cmq, va benissimo così
__________________
mi sembra di essere tornato adolescente ai bei tempi.. che figata essere di nuovo su questo forum
cdere è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 16:23   #15
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Quote:
Originariamente inviato da cdere Guarda i messaggi
ok il risultato definitivo per me sembra essere questo:

\w(?=\s|$|\]|,|\.)

ma c'è un modo di sostituire |\]|,|\. con ad es. un character set tipo \d per i digits? (cioè un set che riporta tutti i segni di punteggiatura ecc...)

no vabbè è solo una sega mentale cmq, va benissimo così
Ma così cosa vorresti ottenere, sinceramente non ti seguo molto

Vediamo...
Codice:
ciao
123prova
test,
pro.ova
elenco:
http:\\www
test-prova
Di queste, quali vuoi considerare parole e quali no?
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 16:28   #16
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Quote:
Originariamente inviato da cdere Guarda i messaggi
ok il risultato definitivo per me sembra essere questo:

\w(?=\s|$|\]|,|\.)

ma c'è un modo di sostituire |\]|,|\. con ad es. un character set tipo \d per i digits? (cioè un set che riporta tutti i segni di punteggiatura ecc...)

no vabbè è solo una sega mentale cmq, va benissimo così
Quello che più si avvicina a quello che chiedi è \W che fa il match di tutti i caratteri NON alfanumerici, il contrario di \w insomma, ma se utilizzi quello ottieni lo stesso risultato che ottenevi con la tua regex ovviamente.

Quindi bisogna sapere cos'è che realmente vuoi perchè ancora non si capisce bene.
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 16:38   #17
cdere
Senior Member
 
L'Avatar di cdere
 
Iscritto dal: Feb 2001
Città: Foggia
Messaggi: 2519
Quote:
Originariamente inviato da MEMon Guarda i messaggi
Prego, tranquillo è solo questione di impratichirsi un attimo.

Comunque visto che credo ti interessi, la regex in questione fa questo:
  1. \w prende tutte i caratterri alfanumerici, quelli che normalmente compongono una "parola" per così dire
  2. \s|$ fa il match di uno "spazio" o del fine stringa(nel caso la parola sia l'ultima della stringa)
  3. (?=) questo si chiama "Positive lookahead", in pratica fa il match di quello che lo procede, ma senza catturare quello che sta dentro alle tonde
  4. quindi \w(?=\s|$) cattura tutti i caratteri alfanumerici che sono seguiti da uno spazio o è l'ultimo carattere disponibile, senza però catturare gli spazi.
grazie mille sei stato davvero chiarissimo!!

Ed grazie anche per \W, era quello che cercavo

a buon rendere
__________________
mi sembra di essere tornato adolescente ai bei tempi.. che figata essere di nuovo su questo forum
cdere è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 18:56   #18
Ryuzaki_Eru
Senior Member
 
L'Avatar di Ryuzaki_Eru
 
Iscritto dal: Sep 2009
Città: Nel mondo dei sogni
Messaggi: 4131
Quote:
Originariamente inviato da cdere Guarda i messaggi
ottimo grazie mille, sai consigliarmi un manuale su cui posso farmi una minima cultura?

grazie!
Il libretto di Marco Beri
Ryuzaki_Eru è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix HONOR CHOICE Projector Air Pro: piccolo, portati...
ASUS ProArt GoPro Edition è il notebook compatto per chi crea ASUS ProArt GoPro Edition è il notebook c...
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090 Fable e Sol a confronto: due cartoni animati cre...
Il tablet rugged leggero e sottile: Lenovo ThinkTab X11 offre resistenza, doppia USB-C e batteria rimovibile Il tablet rugged leggero e sottile: Lenovo Think...
AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot AMD Advancing AI 2026: l'hardware AMD per le ela...
Falso Portale dell'Automobilista ruba pa...
Apple chiude il miglior trimestre di giu...
Sony tira dritto sull'addio ai dischi Pl...
I robot di Google adesso lavorano in squ...
1 miliardo di utenti al giorno: il nuovo...
Broadcom rilascia patch per cinque vulne...
Dalle Fat alle micro e-bike, Engwe ha sc...
L'ossessione per l'IA costa a Zuckerberg...
'Abbiamo le tue foto e la tua cronologia...
Sony rassicura su PS5: memoria assicurat...
Batterie allo stato solido sempre pi&ugr...
OPPO Reno 16 Series, l'editing di foto e...
È gara a chi ne ha violate di più: Claud...
I nuovi Redmi Note 17 arrivano su Amazon...
Il meglio di Amazon in 3 minuti di lettu...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 13:56.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v