javascript - 코드되지 않은 제어 문자를 제거하는 PHP 일반 규칙

WBOY
풀어 주다: 2016-10-10 11:55:54
원래의
1215명이 탐색했습니다.

사용자 이름을 확인하기 위해 웹사이트를 작성할 때 침투 게임을 하는 친구에게 테스트를 요청했습니다. . 그런 다음 제어 문자를 입력받았습니다(비록 중요하지는 않지만 여전히 영향을 미칩니다. sf의 정규 표현식이 작동하지 않는 것 같습니다. 또한 PHP Perl에서 uncode를 사용하는 방법은 무엇입니까?
다음과 같이 테스트하세요:

<code class="php"><?php
    $str=json_decode('"ux\u202eDD"');
    var_dump($str);
    var_dump(preg_match('/\x202e/', $str));</code>
로그인 후 복사
로그인 후 복사

일치할 수 없습니다(참고: u202e는 RLO 제어 문자입니다)
금지 문자 테스트: Gong Lun Fa
문자 순서는 RLOGong Lun Fa
악용되는 허점이 많은 것 같습니다. 제어 문자로?
Tieba가 제어 캐릭터를 차단했습니다. 하지만 제 능력에는 한계가 있어 JS 제어에 적합한 REX를 찾지 못했습니다.
SF에 도움을 청하러 왔습니다.
PS: 중국어 사용자 이름은 사용할 수 없습니다. /^[x4e00-x9affw]{4,12}$/

답글 내용:

사용자 이름을 확인하기 위해 웹사이트를 작성할 때 침투 게임을 하는 친구에게 테스트를 요청했습니다. . 그런 다음 제어 문자를 입력받았습니다(비록 중요하지는 않지만 여전히 영향을 미칩니다. sf의 정규 표현식이 작동하지 않는 것 같습니다. 또한 PHP Perl에서 uncode를 사용하는 방법은 무엇입니까?
다음과 같이 테스트하세요:

<code class="php"><?php
    $str=json_decode('"ux\u202eDD"');
    var_dump($str);
    var_dump(preg_match('/\x202e/', $str));</code>
로그인 후 복사
로그인 후 복사

일치할 수 없습니다(참고: u202e는 RLO 제어 문자입니다)
금지 문자 테스트: Gong Lun Fa
문자 순서는 RLO Gong Lun Fa
악용된 허점이 많은 것 같습니다. 제어 문자로?
Tieba가 제어 캐릭터를 차단했습니다. 하지만 제 능력에는 한계가 있어 JS 제어에 적합한 REX를 찾지 못했습니다.
SF에 도움을 청하러 왔습니다.
PS: 중국어 사용자 이름은 사용할 수 없습니다. /^[x4e00-x9affw]{4,12}$/

PHP 매뉴얼을 훑어본 후 일치하는 패턴,,, 중국어, a-zA-Z_, 일치하는 정규 패턴을 찾았습니다:
/[wx{4e00}-x{9aff}]{4,12}/u 테스트:

<code class="php"><?php
    $str=json_decode('"ux这\u202eわかぃまぃだDD"');
    var_dump($str);
    var_dump(preg_match('/^[\w\x{4e00}-\x{9aff}]{4,12}$/u', $str,$match));
    var_dump($match);</code>
로그인 후 복사

중국어와 일본어는 괜찮습니다. UTF-8 모드를 켜면 됩니다.

UTF-8 모드에서는 "x{...}"를 사용할 수 있으며 중괄호 안의 내용은 유효 16진수입니다. 주어진 16진수를 UTF-8 문자 코드로 해석합니다.

u (PCRE_UTF8)
이 수정자는 Perl과 호환되지 않는 추가 기능을 활성화합니다. 패턴 문자열은 UTF-8로 간주됩니다. 이 수정자는 Unix의 경우 PHP 4.1.0 이상, Win32의 경우 PHP 4.2.3부터 사용할 수 있습니다. PHP 4.3.5는 패턴의 utf-8 유효성 검사를 시작합니다.
질문이 끝났습니다. 왜 대답하지 않았는지 모르겠습니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿