2011-12-01 3 views
4

다음에 127 (즉, 7F 16 진수 이상) 이상의 ascii와 일치하는 정규 표현식이 필요합니다. 아래는 주어진 범위에서 잘 작동합니다.범위와 그 이상 127에 대한 정규식 패턴

string pattern = "[\x00-\x1F]"; 
+0

음, 무엇을 시도 했습니까? 작동 했나요? 그렇지 않다면 왜 안 되겠습니까? –

+0

[\ x00- \ x1F] | [\ x7F] * – user357086

답변

3

또는 연산자 |

string pattern = "[\x00-\x1f]|[\x7f-\uffff]"; 

FF 16 진수는 최대 ASCII 값이됩니다. http://www.mikesdotnetting.com/Article/46/CSharp-Regular-Expressions-Cheat-Sheet

+1

공백을 문자 클래스에서 제거해야한다고 생각합니까? 또한 괄호는 여기에 필요하지 않습니다. 0xff ... –

+0

위의 유니 코드 문자가 있습니다. 그렇기 때문에 범위가 더 정확해야합니다 [\ x7f- \ xffff]? – user357086

+1

"\ uffff"를 사용하십시오. "\ xffff"는 "\ xff"+ "ff"와 같습니다. –

0

어느 : 여기서

더 참조 치트 시트의

  1. 는, 또는 (교번, [a-b]|[x-z])와 범위 모두에서 문자 적용;
  2. 문자 그룹 ([a-bx-z])에서 여러 범위를 사용하거나;
  3. 캐릭터 그룹 반전 범위를 무효화 ([^c-w])
    • 는 이전 두 같이 반드시 상기 동일하지 그래서 부정이 c 전에 w 후 것들 많게을 포함하지만,이 수 이점으로 사용하십시오. a

적절한 값, bcw, xz은 독자를위한 [사소한] 운동으로 남겨진다.

해피 코딩.