정규식 문자 괄호의 하이픈
정규식 문자 괄호를 정의할 때 하이픈 문자(-)를 포함하는 것이 어려울 수 있습니다. . 이는 하이픈이 정규식에서 범위 연산자로 사용되어 일치하는 문자 범위를 나타내기 때문입니다. 문자 대괄호에 리터럴 하이픈을 포함하려면 백슬래시()를 사용하여 이스케이프해야 합니다.
귀하의 경우 정규 표현식:
/^[a-zA-Z0-9.-_]+$/
은 다음과 같은 문자열만 일치시키려고 합니다. 문자, 숫자, 마침표(.) 및 하이픈(-) 문자를 포함합니다. 그러나 문자 괄호 안의 하이픈 배치로 인해 범위 연산자로 처리되어 "a"와 "-" 사이의 문자 범위가 일치하게 됩니다.
이를 수정하려면 , 다음 수정된 정규식에서 볼 수 있듯이 백슬래시를 사용하여 하이픈을 이스케이프 처리할 수 있습니다.
/^[a-zA-Z0-9.\-_-]+$/
이렇게 하면 하이픈 문자가 문자가 아닌 리터럴 문자로 처리됩니다. 범위 연산자. 또는 아래와 같이 문자 대괄호의 시작이나 끝에 하이픈을 배치할 수 있습니다.
/^[.-a-zA-Z0-9_]+$/
하이픈 위치를 수정하여 문자 대괄호에 하이픈을 성공적으로 포함하고 다음을 확인할 수 있습니다. 유효성 검사 표현식에서 문자 그대로 일치합니다.
위 내용은 정규식 문자 대괄호에서 하이픈을 올바르게 이스케이프하거나 배치하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!