이번에는 정규식의 새로운 기능과 정규식의 새로운 기능을 사용할 때의 주의사항에 대해 알려드리겠습니다. 다음은 실제 사례입니다.
ES2015 정규식의 새로운 기능:
원래 정규식을 기반으로 ES2015에서는 4바이트 유니코드 문자 및 기타 기능에 대한 지원이 향상되었습니다.
더 많은 정규식 콘텐츠를 보려면 정규식 튜토리얼 섹션을 참조하세요.
1. RegExpconstructor 사용:
ES2015 이전에는 RegExp 생성자를 사용하여 정규 표현식 객체:
생성 방법 1:
var reg = new RegExp("antzone","g");
생성자의 첫 번째 매개변수는 정규식 문자열 본문이고 두 번째 매개변수는 정규식 수정자입니다.
위 코드는 다음 코드와 동일합니다.
var regex = /antzone/g;
생성 방법 2:
var reg = new RegExp(/antzone/g);
if 매개변수 정규식 문자열이 아니므로 하나의 매개변수만 가질 수 있습니다. 다음과 같이 잘못 작성되었습니다.
var reg = new RegExp(/antzone/,g)
두 번째 사용을 허용하지 않습니다. 정규식 수식 수정자를 설정하는 매개변수입니다.
ES2015에서는 이 동작을 변경합니다. 첫 번째 매개변수가 정규식 개체인 경우에도 두 번째 매개변수를 지정할 수도 있습니다.
var reg = new RegExp(/antzone/gi,"g");
th 정규식 두 매개변수로 지정된 표현식 수정자는 첫 번째 매개변수의 수정자를 재정의합니다.
2. 문자열의 정규 메소드:
정규 표현식과 관련된 match(), replacement(), search() 및 Split() 메소드는 문자열 객체에 속합니다.
ES2015에서는 이 네 가지 메소드가 호출되면 RegExp 객체의 인스턴스 메소드가 실제로 내부적으로 호출됩니다.
(1).String.prototype.match는 RegExp.prototype[Symbol.match]를 호출합니다.
(2).String.prototype.replace는 RegExp.prototype[Symbol.replace]를 호출합니다
(3).String.prototype.search는 RegExp.prototype[Symbol.search]를 호출합니다
(3).String.prototype.split은 RegExp를 호출합니다. .prototype[Symbol.split]
Symbol에 대한 자세한 내용은 ES2015 Symbol 장을 참조하세요.
3. Lookbehind 어설션(ES2016):
lookbehind 어설션에 대해서는 정규식 너비가 0인 어설션에 대한 장을 참조하세요.
4. 새로운 수정자:
Modifier | Description |
uModifier | 이 수정자는 uFFFF보다 큰 유니코드 문자를 올바르게 처리하는 기능을 식별합니다. |
y 수정자 | 는 일치가 lastIndex 속성에 의해 지정된 위치에서만 시작될 수 있다고 규정합니다. 일치가 실패하면 후속 문자는 다시 시도되지 않습니다. |
5. 새로운 속성:
속성 | 설명 |
sticky 속성 | y 수정자가 설정되었는지 식별하는 부울 값을 반환합니다. |
flags 속성 | 정규식의 수정자를 반환합니다. |
6. 새로운 방법:
Method | Description |
RegExp.escape() 6) |
나는 본 것 같아요 이 기사의 경우에는 방법을 마스터했습니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!
추천 도서:
정규식 W 메타 문자 사용에 대한 자세한 설명(코드 포함)
위 내용은 정규식의 새로운 기능은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!