html 파일의 노드에서 텍스트를 추출해야하며 XPath 및 Javascript를 사용하려고합니다.dom에 xpath가있는 단어가 포함 된 텍스트 노드 찾기
필수 조건은 텍스트에 특정 단어가 있어야한다는 것입니다.
<html>
<body>
<p>
Hi, try to extract the word username here and here <b>username</b>
</p>
</body>
</html>
그리고이 표현과 단어 '이름'을 포함하는 텍스트 노드에서 텍스트를 얻을려고 :
의 예에 의해 다음 HTML 파일을 보자 검색을 통해
var search = document.evaluate('//*[contains(child::text(), \"username\")]/child::text()', document, null, XPathResult.ANY_TYPE, null);
순회 I 원하는 결과는 있지만 원치 않는 객체도 있습니다.
["Hi, try to extract the word username here and here", Text, "username"]
여기서 Text는 Object입니다. 그의 textContent는 캐리지 리턴 기호 (Chrome 콘솔 사용)입니다. 이 객체는 어디서 오는 것입니까?
누구든지 해당 객체를 제외하는 더 정확한 XPath 표현식을 제공 할 수 있습니까? 아니면 내 코드에서 제외시켜야합니까?
이상적인 검색은 다음과 같아야합니다
["Hi, try to extract the word username here and here", "username"]
감사합니다 여러분!
고맙습니다. 질문을 한 직후 나는 빛을 보았고 당신이 올린 것과 같은 해결책을 발견했지만 왜 (2)가 일어 났는지 설명 할 수 없었다. 이제 할 수 있습니다;) 간단한 따옴표 안에서 이스케이프 처리 된 큰 따옴표는 내 실수입니다. 팁이 필요하지 않습니다! – dysfuntcional