Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
.NET Framework
C# e regular expressions
domenica 05 luglio 2009 - 16.04
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
gerald81
Profilo
| Newbie
6
messaggi | Data Invio:
dom 5 lug 2009 - 16:04
Ciao Ragazzi, devo chiedervi la cortesia di aiutarmi a risolvere un grattacapo con le regular expressions.
In sostanza, ho un testo di questo tipo:
${P9,}{.}{S9}
oppure
${P9,}
cioè è composto da uno o più gruppi di parentesi graffe {} nel quale interno possono esserci uno o più caratteri.
Quale pattern devo utilizzare per isolare i gruppi di {}? per esempio, devo ottenere da ${P9,}{.}{S9} i gruppi
{P9,}
{.}
{S9}
Grazie per la vostra disponibilità
A presto
Jeremy
Profilo
| Guru
1.527
messaggi | Data Invio:
dom 5 lug 2009 - 17:00
Ciao.
prova con questo
"\{[\w\d,\.]+\}"
Fai tu le modifiche del caso specifico .....
Facci sapere...
Ciao
gerald81
Profilo
| Newbie
6
messaggi | Data Invio:
dom 5 lug 2009 - 17:07
Grazie, funziona alla perfezione, sei stato gentilissimo.
Nel mentre, ho provato che con il pattern
{.}|{..}|{...}
ottengo cmq il risultato che desideravo, saresti così gentile da spiegarmi la logica della tua regexp?
Grazie in anticipo.
Jeremy
Profilo
| Guru
1.527
messaggi | Data Invio:
dom 5 lug 2009 - 17:41
Ciao
>ottengo cmq il risultato che desideravo, saresti così gentile
>da spiegarmi la logica della tua regexp?
Si certo .... innanzitutto ti dico che, il tuo pattern, potrebbe non essere del tutto corretto, in quanto il punto corrisponde a "tutti i caratteri escluso l'acapo", pertanto potrebbe includere le parantesi graffe come carattere.....l'altro motivo lo capirai di seguito.
Vengo alla spiegazione del mio pattern.
\{ .... la backslash, serve a rappresentare un carattere speciale come carattere semplice, pertanto, essendo la barra graffa un carattere speciale che indica il numero di occorenze da valutare (insieme a }) , serve la backslash per interpretarlo come carattere semplice.
\w .... valuta UN carattere alfanumerico od UN underscore
\d .... valuta UNA cifra decimale
, .... la virgola, non serve che te la spiego
\. .... il punto preceduto dalla backslash, vale lo stesso discorso delle graffe.
[] .... tutti le espressioni inserite all'interno delle parentesi quadre, vengono sottoposte a OR, quindi o UN carattere alfanumerico od UNA cifra decimale od UNA virgola od UN punto
+ .... Indica "Una o più occorrenze", per questo, se noti,sopra ho scritto in maiuscolo UN e UNA
\} .... stesso dicorso per \{
Se avessi anche la necessita di individuare una stringa del tipo {} , dovresti sostituire il + con * ..... il perchè, lo lascio cercare a te
Spero di essere stato suffcientemente esaustivo ....
Ciao
gerald81
Profilo
| Newbie
6
messaggi | Data Invio:
lun 6 lug 2009 - 13:47
Ok grazie mille.
A presto.
Gerald81.
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !