>  기사  >  웹 프론트엔드  >  JavaScript Regex를 사용하여 HTML 태그 내에서 여러 줄의 텍스트를 캡처하는 방법은 무엇입니까?

JavaScript Regex를 사용하여 HTML 태그 내에서 여러 줄의 텍스트를 캡처하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-09 22:07:02489검색

How to Capture Multiline Text Within HTML Tags using JavaScript Regex?

JavaScript Regex: 태그 사이의 여러 줄 텍스트 추출

이 시나리오에서는 HTML

정규식 패턴을 사용하여 태그를 지정합니다. 그러나 여러 줄 텍스트, 특히 텍스트에 줄 바꿈("n")이 포함된 경우 문제가 발생합니다.

제공된 패턴은 다음과 같습니다.

/<div>

그러나 여러 줄 텍스트를 제대로 캡처하지 못합니다. .

해결책

문제는 점(.) 메타 문자의 기본 동작에 있습니다. 자바스크립트에서. 기본적으로 . 개행 문자와 일치하지 않습니다. 이 문제를 해결하려면 를 활성화하는 /s(dotAll) 수정자를 사용할 수 있습니다.

그러나 JavaScript는 이전 버전에서 /s 수정자를 지원하지 않았습니다. 대신 다음 해결 방법을 사용할 수 있습니다.

/<div>

여기서:

  • [sS]*는 줄 바꿈(n)을 포함한 모든 문자와 일치합니다.

ES2018부터 JavaScript에는 /s(dotAll) 플래그가 도입되었습니다. 이제 이 플래그를 직접 사용하여 패턴을 다음과 같이 단순화할 수 있습니다.

/<div>

위 내용은 JavaScript Regex를 사용하여 HTML 태그 내에서 여러 줄의 텍스트를 캡처하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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