모든 종류의 비표준 문자를 포함 할 수있는 문자열을 처리해야하며 정규식을 제공해야합니다. 구두점 및 공백을 제외한 영숫자가 아닙니다..net regex 공백을 제외한 모든 비표준 문자 이외의 영숫자 문자
이 방법이 있습니까?
모든 종류의 비표준 문자를 포함 할 수있는 문자열을 처리해야하며 정규식을 제공해야합니다. 구두점 및 공백을 제외한 영숫자가 아닙니다..net regex 공백을 제외한 모든 비표준 문자 이외의 영숫자 문자
이 방법이 있습니까?
:
\p{P}
또는 \p{Punctuation}
: 문장 부호 문자의 어떤 종류.
\p{L}
또는 \p{Letter}
: 모든 언어의 모든 종류의 문자.
\p{Nd}
또는 \p{Decimal_Digit_Number}
: 표의 문자를 제외한 모든 스크립트에서 0부터 9까지의 숫자.
귀하의 정규식은 다음 문자가 아닌 숫자가 아니라 문장 부호가 아닌 공백이 아닌이
[^\p{L}\p{Nd}\p{P} ]+
이 일치 할 수있는 모든 작업과 같을 것이다.
다음 패턴을 사용하십시오. @"[^\s\w]| "
^
기호는 제곱 된 중괄호를 의미합니다. 따라서 단어 문자 (숫자, 문자 및 밑줄) 및 공백 ([^\s\w]
) 또는 공백을 제외한 모든 문자와 일치합니다.
다음 정규식을 사용하십시오.
[^a-zA-Z0-9!.,'" ]
허용되는 구두점 문자를 모두 표현식에 추가하십시오. 마지막 빈 공간은 space
문자입니다.
밑줄이 허용되면 \w
을 사용하십시오. \s
은 공백 문자를 허용합니다. regular-expressions.info에서
악센트 부호가있는 문자를 의미합니까? – Jack
@ 잭은 "영숫자"에 대한 그의 정의에 달려 있습니다. 나는 독일 위키 피 디아 (German Wikipedia)에 대해 살펴 봤는데 "어떤 문자와 숫자"라고 대답 했으므로 나의 대답은 영어이지만 위키 백과 (http://en.wikipedia.org/wiki/Alphanumeric)는 " ** 라틴 문자 ** 및 아랍어 숫자 모음 ". – stema
비표준 문자를 가장 가까운 ASCII 문자로 바꾸고 싶지는 않습니까? *? 'ponponine '과 같은 누군가의 이름을 단지'폰틴'으로 바꾸는 것은 약간 무례한 것처럼 보인다. –