LittleHacker (Member)
Guru
Messaggi: 1033
Iscritto: 28/04/2009
|
Allora io ho la seguenta frase: esempio di come "\cip ciop\"
Io vorrei controllare se nella frase esistono i simboli "\/:?
Se almeno uno di questi simboli esiste allora "rinomino" la frase in Esempio...
Capito??
|
|
Mte90 (Member)
Guru
Messaggi: 1144
Iscritto: 25/03/2008
|
|
|
ruggy94 (Member)
Guru
Messaggi: 890
Iscritto: 21/04/2008
|
Postato originariamente da LittleHacker:
Allora io ho la seguenta frase: esempio di come "\cip ciop\"
Io vorrei controllare se nella frase esistono i simboli "\/:?
Se almeno uno di questi simboli esiste allora "rinomino" la frase in Esempio...
Capito?? |
Più o meno Intendi che devi solo controllare se è presente uno di questi caratteri? O se è presente una stringa tra due di questi caratteri?
E poi che vuol dire "rinominare" una stringa? Modificare la stringa tra i due caratteri? Ultima modifica effettuata da ruggy94 il 10/07/2009 alle 14:31 |
|
LittleHacker (Member)
Guru
Messaggi: 1033
Iscritto: 28/04/2009
|
Si vorrei controllare se nella seguente stringa ci sono i caratteri elencati sopra e se ci sono modifico la stringa in esempio apposto di (esempio ...)...
Ho già fatto il codice:
Codice sorgente - presumibilmente VB.NET |
Dim control As New Regex("") If control.IsMatch(title) Then SaveVideo.FileName = "video.flv" Else SaveVideo.FileName = title & ".flv" End If
|
Almeno questa parte è giusta??
Ultima modifica effettuata da LittleHacker il 10/07/2009 alle 14:43 |
|
LittleHacker (Member)
Guru
Messaggi: 1033
Iscritto: 28/04/2009
|
Un aiutino??
|
|
ruggy94 (Member)
Guru
Messaggi: 890
Iscritto: 21/04/2008
|
Postato originariamente da LittleHacker:
Un aiutino?? |
Non è per essere scorretto nei confronti del forum, ma a causa dei grandi problemi di comprensione preferirei risolvere questo problema in privato. Questo perchè in chat la comunicazione è più immediata e diretta e qui sul forum si creerebbe una confusione terribile. Appena giungeremo ad una soluzione, la scriveremo sul forum.
Grazie e scusate se uso questo metodo, ma è proprio necessario
LittleHacker non ricordo se tu mi abbia già aggiunto a msn, in caso contrario: ruggys94@hotmail.it
PS: Se qualcuno è contrario a questa risoluzione del problema, lo dica ed eviterò Ultima modifica effettuata da ruggy94 il 10/07/2009 alle 15:33 |
|
LittleHacker (Member)
Guru
Messaggi: 1033
Iscritto: 28/04/2009
|
Evvai c'e l'ho fatta...Grz a tutti ma adesso avrei un'altra domandina sempre su questo argomento; il programma quando trova almeno uno di quei caratteri speciali modifica la stringa in video.flv e invece se non ne trova naenche uno lo lascia invariato adesso la domanda, come posso eliminare i simboli che il programma a trovato senza modificare drasticamente la stringa?
Mi spiego meglio: lui mi trova il carattere '<' nella stringa Hello < World!, e me la modifica in video.flv ma io vorrei da questa stringa togliere solo e solamente il simbolo '<' come posso fare?...Grazie mille a tutti
P.S.: Mi stavo dimenticando, questo è il codice regex che ho utilizzato per "sgamare" i simboli:
Codice sorgente - presumibilmente VB.NET |
Dim control As New Regex("[*\/^?""*|:<>]") If control.IsMatch(title) Then ... Else ... End If
|
|
|
Il Totem (Admin)
Guru^2
Messaggi: 3635
Iscritto: 24/01/2006
|
Per la prima richiesta non era necessario usare le regex. Per la secondo non lo è strettamente, ma puoi benissimo fare così. Devi usare il metodo Replace della classe Regex. Ammettiamo che tutti questi caratteri speciali debbano essere sostituiti con un underscore. Il codice diventa così:
Codice sorgente - presumibilmente VB.NET |
Dim Chars As New System.Text.RegularExpressions.Regex("[\/\\\<\>\*\^\?\|:""]") Dim Text As String = "\nome ^con* caratteri? <speciali>.flv" Text = Chars.Replace(Text, "_") 'Text sarà "_nome _con_ caratteri_ _speciali_.flv"
|
Nota che ho usato un backslash prima di quasi tutti quei caratteri: dato che essi sono usati come qualificatori, quantificatori e raggruppatori nelle regex, per indicare che li si sta usando come semplici caratteri bisogna renderli escape.
|
|