-1
나는 누군가가 이런 현상이 발생하는 이유는 다음 이해하는 데 도움 수있는 기대했다
String s = "tbody\n" +"a\n" +"/tbody";
Pattern p = Pattern.compile("tbody[^(/tbody)]+/tbody");
Matcher m = p.matcher(s);
while(m.find()){
System.out.println("found: \n\n"+m.group());
}
출력은 다음과 같습니다
found:
tbody
a
/tbody
그러나 String s = "tbody\n" +"ao\n" +"/tbody"
그것을 (I는 A 다음 오 추가)하는 경우 아무것도 인쇄하지 않습니다. 아무도 내가 누락 된 것을 말할 수 있습니까?
NetBeans 7.4를 사용하고 있습니다.
정규 표현식에서'[..]'는 * 문자 클래스 *입니다 - 이제 이름을 알기 때문에보세요 :) 어떤 경우에는 * 욕심이 많지 않거나 게으른 한정 기호 *를 사용하십시오 :'tbody (. *?)/tbody' (* 단어 경계 *에도 관심이있을 수 있습니다). – user2864740
HTML을 정규식으로 구문 분석하는 방법을 알아 내려는 것 같습니다. HTML은 일반 언어가 아니기 때문에 이것은 비 스타터입니다. [이 답변을 읽어주십시오 (http://stackoverflow.com/a/1732454/18157) –
@ 짐 가르슨 내가 뭘하려고하는지 잘 모르겠 파싱입니다. 특정 웹 사이트에서 정보를 수집해야하는데, 그 태그 사이에 거짓말을합니다. – user2847339