>  기사  >  웹 프론트엔드  >  JavaScript 정규식에서 악센트 문자를 일치시키는 방법은 무엇입니까?

JavaScript 정규식에서 악센트 문자를 일치시키는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-08 01:54:01122검색

How to Match Accented Characters in JavaScript Regular Expressions?

JavaScript 정규식에서 악센트 문자 일치

악센트 문자(분음부호)가 포함된 문자열을 일치시킬 때 JavaScript는 유니코드 처리로 인해 문제가 발생합니다. 이 문제를 해결하는 방법은 다음과 같습니다.

악센트 문자 명시적 나열

이 방법은 지원되는 모든 악센트 문자를 수동으로 나열해야 하므로 번거롭고 유연성이 없습니다.

var accentedCharacters = "àèìòùÀÈÌÒÙáéíóúýÁÉÍÓÚÝâêîôûÂÊÎÔÛãñõÃÑÕäëïöüÿÄËÏÖÜŸçÇßØøÅåÆæœ";
var regex = "^[a-zA-Z" + accentedCharacters + "]+,\s[a-zA-Z" + accentedCharacters + "]+$";

점 문자 클래스 사용

점(.) 클래스는 개행 문자를 제외한 모든 문자를 허용하므로 이 접근 방식은 거의 모든 항목과 일치합니다.

var regex = /^.+,\s.+$/;

유니코드 범위

이 방법은 유니코드 문자 범위를 활용하여 악센트가 있는 라틴 문자를 일치시킵니다.

/^[a-zA-Z\u00C0-\u017F]+,\s[a-zA-Z\u00C0-\u017F]+$/

비교 및 권장 사항

유니코드 범위를 사용하는 세 번째 접근 방식은 권장됩니다. 모든 라틴 문자를 사용자 사례와 관련된 악센트와 일치시키고 불필요한 문자나 과도한 일치를 방지합니다.

유니코드 악센트를 위한 더 간단한 솔루션

모든 유니코드 일치를 위해 악센트가 있는 경우 다음 단순화된 표현을 사용해 보세요.

[A-zÀ-ú] // accepts lowercase and uppercase characters
[A-zÀ-ÿ] // as above, including letters with an umlaut (includes [ ] ^ \ × ÷)
[A-Za-zÀ-ÿ] // as above but not including [ ] ^ \
[A-Za-zÀ-ÖØ-öø-ÿ] // as above, but not including [ ] ^ \ × ÷

위 내용은 JavaScript 정규식에서 악센트 문자를 일치시키는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.