제목이 다음과 같이 변경되었습니다. "u 플래그를 사용할 때는 작동하지만 v 플래그를 사용할 때는 작동하지 않는 정규식"
P粉684720851
2023-08-25 15:47:43
<p>이 정규식 패턴에서 다음 콘솔 경고가 표시되었습니다. </p>
<pre class="brush:php;toolbar:false;">^[a-zA-Z0-9+_.-]+@[a-zA-Z0-9]+\.[a-zA- Z0-9]+$</pre>
<인용문>
<p>패턴 속성 값 <code>^[a-zA-Z0-9+_.-]+@[a-zA-Z0-9]+.[a-zA-Z0-9]+$< ;/code>는 RegExp <code>u</code> 플래그를 사용하면 유효하지만 <code>v</code> 플래그를 사용하면 유효하지 않습니다. Uncaught SyntaxError: <code>/^[a -zA-Z0-9+_.-]+@[a-zA-Z0-9]+</code>.<code>[a-zA-Z0-9]+$/v:</ code> 문자 클래스에 잘못된 문자가 있습니다. </p>
</인용문>
<p>이 경고를 해결하기 위해 유효한 정규식 패턴을 만드는 방법을 알 수 없습니다. 누구든지 오류와 해결 방법을 설명해 주시겠습니까? </p>
<p>문서를 보려고 하지만 <code>v</code> 플래그를 사용하여 작동하게 만드는 방법을 찾을 수 없습니다. </p>
문제는 새로 도입된
v
标志对转义规则施加了更多限制。由于它允许字符类的减法和交集,因此字符类末尾的字面量-
을 피할 수 없다는 것입니다.그래서
u
标志,就没有这样的限制,而使用v
플래그를 사용하면 이런 제한이 있습니다. 보다.