Java는 정규 표현식을 기반으로 지정된 HTML 태그 지정 속성 값을 가져오는 방법

본고는 Java가 정규 표현식을 바탕으로 지정한 HTML 태그의 지정한 속성 값을 가져오는 방법을 보여 줍니다.다음과 같이 여러분에게 참고할 수 있도록 공유합니다.
때때로 이러한 요구가 있을 수 있습니다. HTML 페이지에서 지정한 라벨의 지정한 속성 값을 가져오면 제3자 라이브러리 해석을 통해 얻을 수 있지만 이것은 상대적으로 번거롭습니다!
정규 표현식을 사용하면 간단해진다.코드는 다음과 같습니다.

package com.mmq.regex;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
 * @use  HTML 
 * @ProjectName stuff
 * @Author mikan
 * @FullName com.mmq.regex.MatchHtmlElementAttrValue.java
 * @JDK 1.6.0
 * @Version 1.0
 */
public class MatchHtmlElementAttrValue {
  /**
   *  HTML 
   * @param source  
   * @param element  
   * @param attr  
   * @return  
   */
  public static List<String> match(String source, String element, String attr) {
    List<String> result = new ArrayList<String>();
    String reg = "<" + element + "[^<>]*?\\s" + attr + "=['\"]?(.*?)['\"]?(\\s.*?)?>";
    Matcher m = Pattern.compile(reg).matcher(source);
    while (m.find()) {
      String r = m.group(1);
      result.add(r);
    }
    return result;
  }
  public static void main(String[] args) {
    String source = "<a title=  href=''>aaa</a><a title=' ' href=''>bbb</a>";
    List<String> list = match(source, "a", "title");
    System.out.println(list);
  }
}

PS: 여기에 매우 편리한 정규 표현식 도구 2가지를 더 제공하여 참고하여 사용할 수 있습니다.
JavaScript 정규 표현식 온라인 테스트 도구:
http://tools.jb51.net/regex/javascript
정규 표현식 온라인 생성 도구:
http://tools.jb51.net/regex/create_reg
본고에서 기술한 것이 여러분의 자바 프로그램 설계에 도움이 되기를 바랍니다.

좋은 웹페이지 즐겨찾기