2010-09-13 21 views
9

Są to ważne postacie:Usuń znaki specjalne z ciągiem

a-z 
A-Z 
0-9 
- 
/

Jak mogę usunąć wszystkie inne postacie z mojego ciąg?

+3

jakie znaki nie są wyjątkowe? Czy chcesz, aby oczyszczony ciąg zawierał tylko '-' i'/', czy też chcesz zachować inne znaki? – LukeH

+0

a-zA-Z0-9 i -,/reszta wszystko nie jest potrzebne, ale głównie teraz muszę usunąć crlf, cr, lf przy użyciu vb.net – Sriram

Odpowiedz

3

Użyj jednego regex lub klasy funkcje Char jak IsControl(), isdigit() itd. Pobierz listę tych funkcji tutaj: http://msdn.microsoft.com/en-us/library/system.char_members.aspx

Oto próbka regex przykład:

(Import to przed użyciem RegEx)

Imports System.Text.RegularExpressions 

w funkcji, napisać ten

Regex.Replace(strIn, "[^\w\\-]", "") 

Ta instrukcja zastąpi dowolny znak, który nie jest słowem, \ lub -. Dla np. aa-b @ c stanie się aa-bc.

+1

+1 OP prawdopodobnie chce zachować także spacje - choć może nie tab (?), który byłby "Regex.Replace (strIn," [^ \ w \\ -] "," ")' –

+0

Uwaga! Klasa '\ w' nie pasuje tylko do znaków alfanumerycznych. Na przykład Twoje wyrażenie regularne nie będzie poprawnie czyścić * "a_string_containing_underscores" *. (Ponadto, OP chce zezwolić na ukośniki, a nie ukośniki). – LukeH

+0

Hmm. Slash powinien być inny. –

20
Dim cleanString As String = Regex.Replace(yourString, "[^A-Za-z0-9\-/]", "") 
+0

Niewielkie wsparcie z prośbą .. Jeśli muszę wyłączyć z tego znak specjalny. Nie specjalny znak, powiedz Jeśli chcę, aby spacja i symbol # nie były zastępowane .. jak mogę to zmienić ... –

+0

@sforsandeep: Po prostu dodaj je do grupy, na przykład: '[^ A-Za-z0-9 \ -/# \ s] 'lub podobne. – LukeH

0
Function RemoveCharacter(ByVal stringToCleanUp) 
    Dim characterToRemove As String = "" 
     characterToRemove = Chr(34) + "#$%&'()*+,-./\~" 
     Dim firstThree As Char() = characterToRemove.Take(16).ToArray() 
     For index = 1 To firstThree.Length - 1 
      stringToCleanUp = stringToCleanUp.ToString.Replace(firstThree(index), "") 
     Next 
     Return stringToCleanUp 
End Function 
+0

Proszę podać trochę informacji o kodzie – Saveen