Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Mate X7 rinnova la sfida nel segmento dei pieghevoli premium puntando su un design ancora più sottile e resistente, unito al ritorno dei processori proprietari della serie Kirin. L'assenza dei servizi Google e del 5G pesa ancora sull'esperienza utente, ma il comparto fotografico e la qualità costruttiva cercano di compensare queste mancanze strutturali con soluzioni ingegneristiche di altissimo livello
Nioh 3: souls-like punitivo e Action RPG
Nioh 3: souls-like punitivo e Action RPG
Nioh 3 aggiorna la formula Team NINJA con aree esplorabili più grandi, due stili di combattimento intercambiabili al volo (Samurai e Ninja) e un sistema di progressione pieno di attività, basi nemiche e sfide legate al Crogiolo. La recensione entra nel dettaglio su combattimento, build, progressione e requisiti PC
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
La facilità di installazione e la completa automazione di tutte le fasi di utilizzo, rendono questo prodotto l'ideale per molti clienti. Ecco com'è andata la nostra prova in anteprima
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 21-08-2010, 19: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, 22: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, 13: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, 13: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, 15: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, 16: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, 16: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, 16: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, 17: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, 17: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, 17: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, 17: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, 17: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 17:18.
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2010, 17: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, 17: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, 17: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, 17: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, 19: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


Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi Recensione HUAWEI Mate X7: un foldable ottimo, m...
Nioh 3: souls-like punitivo e Action RPG Nioh 3: souls-like punitivo e Action RPG
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti Test in super anteprima di Navimow i220 LiDAR: i...
Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto Dark Perk Ergo e Sym provati tra wireless, softw...
DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker DJI RS 5: stabilizzazione e tracking intelligent...
Reddit punterà sull'AI per miglio...
Samsung ha obiettivi molto ambiziosi per...
I produttori non faranno sconti sulle me...
Ubisoft potrebbe cedere pezzi se il pian...
Qualcomm potrebbe utilizzare una tecnolo...
Starfield per Nintendo Switch 2 potrebbe...
Un MacBook Pro a -300€, i MacBook Air M4...
Amazon abbassa i prezzi sugli iPhone: sc...
Amazon, ancora sconti sugli smartphone A...
iPhone Air 2 'riciclerà' alcuni c...
Offerta Amazon da non perdere: lo speake...
Nioh 3 debutta alla grande su Steam: pri...
Al centro della Via Lattea ci potrebbe e...
Elon Musk ora guarda alla Luna: SpaceX p...
La Cina ha lanciato nuovamente lo spazio...
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: 03:15.


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