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
App. WinForms / WPF .NET
Espressioni regolari c#
mercoledì 13 luglio 2011 - 12.54
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
C#
|
.NET 3.5
|
Windows 7
|
Visual Studio 2008
eddyG
Profilo
| Junior Member
173
messaggi | Data Invio:
mer 13 lug 2011 - 12:54
Ciao a tutti.
mi sono avvicinato alle espressioni regolari per motivi di lavoro e finchè sono espressioni semplici sono riuscito ad avere come risultato ciò che mi aspettavo...ma attualmente con una espressione non riesco a saltarci fuori e spero che qualcuno mi possa dare un piccolo aiutino/suggerimento a riguardo.
io ho una stringa di parole separate tra di loro tramite la ','(virgola) e come espressione sto utilizzando "\b\w{nx,ny}\b" perchè vorrei recuperare i caratteri presenti nel posto nx e ny di ogni singola parola...
dato che n può variare io ho costruito l'espressione in questo modo "\b\w{" + textbox1.text +"x," + textbox2.text + "y}\b"
il risultato è che non mi estrapola nulla...
come mai?
qualcuno saprebbe dirmi qualcosa in più a riguardo?
grazie anticipatamente
danielerew
Profilo
| Newbie
6
messaggi | Data Invio:
gio 14 lug 2011 - 15:42
i valori *.Text sei sicuro che passino? li hai recuperati magari con un get? fai una prova mettendoli nella console..
eddyG
Profilo
| Junior Member
173
messaggi | Data Invio:
ven 15 lug 2011 - 11:41
si,la costruzione dell'espressione è corretta come risultato che poi passo per la ricerca...
danielerew
Profilo
| Newbie
6
messaggi | Data Invio:
dom 17 lug 2011 - 20:15
dovresti postare un po di codice, sarebbe meglio.
Volendo puoi anche aggirare l ostacolo con un if condizionale.
Esempio:
static void Main()
{
string[] sentences =
{
"cow over the moon",
"Betsy the Cow",
"cowering in the corner",
"no match here",
"prova here not",
"xxl not good"
};
string sPattern = "cow";
string sPattern2 = "not";
//string sPattern = @"\\cow\\S*not\\b";
foreach (string s in sentences)
{
System.Console.Write("{0,24}", s);
if ((Regex.IsMatch(s, sPattern, System.Text.RegularExpressions.RegexOptions.IgnoreCase)) || (Regex.IsMatch(s, sPattern2, System.Text.RegularExpressions.RegexOptions.IgnoreCase)))
{
System.Console.WriteLine(" (match for '{0}' found)", sPattern);
System.Console.WriteLine(" (match for '{0}' found)", sPattern2);
}
else
{
System.Console.WriteLine();
}
}
}
ciao spero ti possa essere utile.
daniele
eddyG
Profilo
| Junior Member
173
messaggi | Data Invio:
ven 22 lug 2011 - 16:34
Scusandomi se non mi sono fatto sentire prima,ma ho avuto altro a cui dedicarmi,ti posto le istruzioni che utilizzo per questa espressione regolare:
"\\b\\w{" + txtBoxSearch.Text + "," + txtBoxSearch2.Text + "}\\b";
reg = new Regex(pattern, RegexOptions.IgnoreCase);
MatchList = reg.Matches(txtBoxInput.Text);
FirstMatch = MatchList[0];
txtBoxOutput.Text = FirstMatch.Value;
dove "txtBoxSearch.Text" e "txtBoxSearch2.Text" sono due textbox sulla form in cui inserisco il numero della posizione di cui io vorrei ricavare il carattere associato.
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 !