2010-04-10 10 views
0

나는 나의 문자열에서 다음 문자를 제외 할 :문자열에서 일부 특수 문자를 제외하기위한 정규식을 작성하는 방법은 무엇입니까?

\-- 
' 
< 
> 

방법이를 위해 정규 표현식을 작성하는 방법을 가르쳐주세요.

+1

* 정규식을 사용하지 않음 *. 표준 문자열 조작 함수 (작업에 더 빠르고 적합)를 사용하십시오 ... 예를 들어 python에서 str.translate는 Java에서 작업을 수행합니다. replace.replace ... C#의 동등한 함수를 사용합니다. – aviraldg

답변

0

문제는이 정규식 작업이 않는 문자열에서 \--'<>을 제거하는 방법 인 경우 :

['<>]|\\-- 

또는 C#으로

resultString = Regex.Replace(subjectString, @"['<>]|\\--", ""); 
0

은 정규식 방언 lookaheads를 지원하는 경우 :

^(?:(?!\\--|['<>]).)*$ 

그러나, 일부 언어에서 간단한 수동 검사가 아닌 정규식을 사용하는 청소기 수 있습니다.

+0

범위' - ''는 유효하지 않습니다. 적어도 .NET의 정규식 구현. – Joey

+0

맞습니다. 나는 단지 기계적으로 문자를 복사했는데 두 개의 대시가 있음을 알지 못했습니다. OP 로의 편집으로 전체 시퀀스가 ​​고려되는 것 같습니다. –

0
string s = Regex.Replace(SomeString, "[\-'<>]", ""); 

희망이 도움이됩니다.

+1

거기에 '&mt;'이 뭐니? – Joey

+0

죄송합니다 ... 나는 서두 릅니다. – NawaMan

2

개인적으로 나는 단지 string.Replace를 사용합니다. 정규식은 훌륭하지만 현명하게 사용해야합니다.

관련 문제