2016-06-07 2 views
0

mysql 쿼리에 사용되는 문자열에서 잘못된 문자를 제거하기 위해 Microsoft MSDN 예제를 사용했습니다.vb.net 잘못된 문자 제거 - 공백 문자가 아님

그러나 문자열에서 공백을 제거하지 않도록 함수를 수정하려면 어떻게해야합니까? 예. 입력 "시험 테스트" "Testtest"

Function CleanInput(strIn As String) As String 
    ' Replace invalid characters with empty strings. 
    Try 
     Return Regex.Replace(strIn, "[^\w\[email protected]]", "") 
    ' if we timeout when replacing invalid characters, we should return String.Empty. 
    Catch e As RegexMatchTimeoutException 
     Return String.Empty   
    End Try 
End Function 

로 표시됩니다 다른 유용한 팁도

솔루션을 찾을 감사합니다 : 정규식 문자열에 \의 추가 내 문제를 해결

 Return Regex.Replace(strIn, "[^\w\s\[email protected]]", "") 
+1

유용한 팁 : SQL을 처음부터 삽입하지 마십시오. 이것은 문제가되지 않습니다. –

+0

O'Brien과 같은 이름을 데이터베이스에 삽입해야한다면 어떻게해야할까요? 이 코드는 어포 스트로피를 생략하지 않습니까? 왜이 노력을 기울여야할까요? 매개 변수가있는 쿼리 만 사용하면 걱정할 필요가 없습니다. –

답변

0

해당 기능의 실제 업데이트 된 버전은 다음과 같습니다.

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

그건 당신을 위해 작동하지 않습니다.

+0

나는 그것을 알아 냈다. Regex 표현식에 \ s를 추가해야합니다. Regex.Replace (strIn, "[^ \ w \ s \. @ -]", "") – Tincho