주어진 XML 문서에 존재하거나 존재하지 않을 수있는 용어 목록 (문자열)이 있습니다. 속성 값에서이 문자열을 찾아야 만합니다. 발견되면 자체 태그와 부모 태그를 반환합니다. 자바에서 이것을 어떻게 할 수 있습니까?XML 문서에서 자체 및 부모 태그 찾기
EDIT : DOM Parser 또는 SAX Parser를 사용하여 여러 가지 방법을 찾거나 직접 작성했습니다. 나는 그것을하는 가장 효율적인 방법을 알고 싶다.
주어진 XML 문서에 존재하거나 존재하지 않을 수있는 용어 목록 (문자열)이 있습니다. 속성 값에서이 문자열을 찾아야 만합니다. 발견되면 자체 태그와 부모 태그를 반환합니다. 자바에서 이것을 어떻게 할 수 있습니까?XML 문서에서 자체 및 부모 태그 찾기
EDIT : DOM Parser 또는 SAX Parser를 사용하여 여러 가지 방법을 찾거나 직접 작성했습니다. 나는 그것을하는 가장 효율적인 방법을 알고 싶다.
답을 직접 찾았습니다. 나는 모든 시작을 밀어 모든 종료 태그를 위해 밖으로 팝업 스택을 사용하는 동안이
SAXParserFactory spfac = SAXParserFactory.newInstance();
SAXParser sp = spfac.newSAXParser();
EMSAXParser handler = new EMSAXParser(this.terms);
그런 다음 나는 다음과 같은 방법을 구현 사용했다. 그리고 텍스트가 founf 인 경우 검색이 수행 된 후 해당 용어가 텍스트에서 발견되면 스택의 상위 두 요소가 엿보입니다.
startElement(String uri, String localName, String qName, Attributes attributes);
characters(char[] buffer, int start, int length);
endElemnet(String uri, String localName, String qName);
여러분 모두에게 감사드립니다.
XPath를 사용할 수 있습니다. 예 : //*[@* = 'something']
은 모두와 일치합니다. <a b="something"/>
, <a b="c" d="something"><e f="g"/></a>
다음 페이지 확인, 자바 XPath를 사용으로
등 : 구문 분석 응용 프로그램을 가능하게 http://docs.oracle.com/javase/1.5.0/docs/api/javax/xml/xpath/package-summary.html
The Java API for XML Processing (JAXP)
XML 처리 (JAXP)을위한 자바 API를 변환, 특정 XML 프로세서 구현과 독립적 인 인 API를 사용하여 XML 문서의 유효성을 검사하고 쿼리 할 수 있습니다. JAXP 은 공급 업체가 응용 프로그램 코드에 종속성을 도입하지 않고 자체적으로 구현을 제공 할 수 있도록하는 플러그 가능 레이어를 제공합니다.
XPath 식 자세한 문서 객체 모델 (DOM) 네비게이션 코드보다 작성하기가 훨씬 더 쉽다. XML 문서에서 정보를 추출해야하는 경우 가장 간단하고 간단한 방법은 Java 프로그램 내에 XPath 표현식을 포함시키는 것입니다. Java 5에는 XPath로 문서를 쿼리하기위한 XML 객체 모델 독립 라이브러리 인 javax.xml.xpath 패키지가 도입되었습니다.
당신은 XML 문서에 XPath 식을 실행할 수 있습니다 :
InputSource source= new InputSource(new FileInputStream(doc)));
XPathFactory factory = XPathFactory.newInstance();
XPath xpath = factory.newXPath();
NodeList nodes = (NodeList)xpath.evaluate("//@*[. = \'" + myString + "\']", source, XPathConstants.NODESET);
당신은 다음 포함 된 노드 개체와 부모 노드를 얻을 수있는 결과 NodeList를 사용할 수 있습니다.
무엇을 시도 했습니까? XML 문서를 구문 분석하는 방법을 다루는 수백만 질문을 검색하셨습니까? 그리고 XML은 어떻게 생겼지? 당신이 찾고있는 용어는 무엇입니까? 이 질문은 품질이 매우 좋지 않으므로 편집해야합니다. – Th0rndike