7
내가 제외한 문자열에서 문자열에서 모든 문자를 제거하기 위해 노력하고있어 :정규 표현식 PHP
- 영숫자 문자
- 달러 기호 (
$
) - 밑줄 (
_
) 코드 포인트U+0080
및U+FFFF
preg_replace('/[^a-zA-Z\d$_]+/', '', $foo);
:
나는이 일에 의해 처음 세 가지 조건이 있어요? I looked at using \X
이지만 65000 이상의 문자를 나열하는 것보다 더 좋은 방법이 있어야합니다.
예 일부 exa mples은 OP로부터 더 명확하게 만들 것입니다 – anubhava
처음에는'\ w'를 주저했습니다. 왜냐하면 로케일 특정 매칭이 사물에 영향을 줄지 모르겠지만 어쨌든 유니 코드 범위가 악센트 부호가있는 문자를 커버하는 것처럼 보입니다. 그래서 나는 안전하다고 생각합니다. . '/ u'는 제가 찾고있는 것입니다. 고마워요. 참고로 외로운 대리모는 무엇입니까? –
@ rink.attendant.6 : 더 많은 문자를 지정할 수 있도록하기 위해 UTF-16에서 서로 게이트를 지정하는'd800'에서'dfff' 범위가 있습니다. 단일 사로 게이트는 UTF-16에서 유효한 문자가 아닙니다 (유효한 문자를 지정하는 데 쌍이 필요합니다). 그래도 PCRE가 문자열에 고독한 대리자를 만났을 때 오류가 발생하면 기억이 안납니다. – nhahtdh