이 글은 정규식학습 튜토리얼의 역추적인용문역참조를 주로 소개합니다. 역참조의 개념, 기능, 구현 기법을 예제 형식으로 자세히 분석합니다. 필요한 친구는 참고할 수 있습니다.
이 글에서는 설명합니다. 예제가 포함된 정규 표현식 역참조 표현식은 역참조입니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.
모든 예제에서 정규식 일치 결과는 소스 텍스트의 [and] 사이에 포함됩니다. Java 자체에서의 표현 사용법은 해당 부분에서 설명하겠습니다. 모든 Java 예제는 JDK1.6.0_13에서 테스트되었습니다.
1. 문제 소개
HTML 페이지에서 제목 태그(H1-H6) 일치 문제:
텍스트:
<body> <h1>Welcome to my page</H1> Content is pided into twosections:<br> <h2>Introduction</h2> Information about me. <H2>Hobby</H2> Information about my hobby. <h2>This is invalid HTML</h3> </body>
정규식: 3e12e07a2e3ebc44e792639ffa2426bc
결과:
6c04bd5ca3fcae76e30b72ad730ca86d
【4a249f0d628e2318394fd9b75b4636b1Welcome to my page921186cad5e55f1481a45fdcd6c30f6e】
콘텐츠는 두 섹션으로 나누어집니다. 0c6dc11e160d3b678d68754cc175188a
【c1a436a314ed609750bd7c7d319db4da소개2e9b454fa8428549ca2e64dfac4625cd】
나에 대한 정보
【1b7994ba0f794e1b49742a6367e9e0c6취미ebe8950f0835d9653ff486769499854f】
나의 취미에 대한 정보
【c1a436a314ed609750bd7c7d319db4da 잘못된 HTML39528cedfa926ea0c01e69ef5b2ea9b0]
36cc49f0c466276486e50c850b7e4956
분석: 패턴 bec64cdfd3b18ddf17d11124d921cd9d은 첫 번째 수준 제목의 여는 태그와 일치하며 대소문자를 구분하지 않습니다. 이 예에서는 4a249f0d628e2318394fd9b75b4636b1, c1a436a314ed609750bd7c7d319db4da, c0d08c9e09935101747a568bd8607d7d와 일치합니다. 473f0a7621bec819994bb5020d29372a, 39528cedfa926ea0c01e69ef5b2ea9b0 메타 문자 는 여기서 태그의 텍스트를 일치시키는 데 사용됩니다. 그렇지 않으면 첫 번째 시작 태그부터 마지막 종료 태그까지의 내용이 일치합니다. 그러나 결과를 보면 유효하지 않은 태그, 즉 c1a436a314ed609750bd7c7d319db4da39528cedfa926ea0c01e69ef5b2ea9b0도 매칭되어 전혀 매칭이 불가능함을 알 수 있다. 이 문제를 해결하려면 역참조를 사용해야 합니다.
2. 역참조 일치
역참조는 패턴의 후반부가 전반부에 정의된 하위 표현식을 참조한다는 의미입니다. 하위 표현식의 사용, 구분 및 참조에 대해서는 이전에 소개한 적이 있습니다. 이제 이전 예제를 풀어보겠습니다.
텍스트:
<body> <h1>Welcome to my page</H1> Content is pided into twosections:<br> <h2>Introduction</h2> Information about me. <H2>Hobby</H2> Information about my hobby. <h2>This is invalid HTML</h3> </body>
정규식: 2b0cba08e60dd5488139acd8c53df8f7.*?ff4eb78c321859eb74ed45e91b2e966e
결과:
me.
JavaScript 정규 표현식 온라인 테스트 도구:
http://tools.정규 표현식 온라인 생성 도구:
http://tools.jb51.net/regex/create_reg
위 내용은 정규식 역참조에 대한 자세한 설명_정규식의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!