บทความนี้อธิบายวิธีการของ Java ที่ได้รับแท็ก HTML ที่ระบุและระบุค่าแอตทริบิวต์ตามนิพจน์ทั่วไป แบ่งปันสำหรับการอ้างอิงของคุณดังนี้:
บางครั้งอาจมีข้อกำหนดเช่นนี้ การได้รับค่าแอตทริบิวต์ที่ระบุของแท็กที่ระบุจากหน้า HTML สามารถรับได้ผ่านการแยกห้องสมุดของบุคคลที่สาม แต่นี่ค่อนข้างลำบาก!
หากคุณใช้นิพจน์ทั่วไปมันจะกลายเป็นเรื่องง่าย รหัสมีดังนี้:
แพ็คเกจ com.mmq.regex; นำเข้า java.util.arraylist; นำเข้า java.util.list; นำเข้า java.util.regex.matcher; นำเข้า java.util.regex.pattern;/** * @use ได้รับคุณค่าของคุณลักษณะที่ระบุไว้ com.mmq.regex.matchhtmlelementattrvalue.java* @jdk 1.6.0* @version 1.0* /คลาสสาธารณะ matchhtmlelementattrvalue { /*** รับค่าของแอตทริบิวต์ที่ระบุ* @param ชื่อ @return รายการแอตทริบิวต์รายการ*/ รายการคงที่สาธารณะ <String> การจับคู่ (แหล่งที่มาของสตริง, องค์ประกอบสตริง, สตริง attr) {รายการ <string> result = new ArrayList <String> (); String reg = "<" + element + "[^<>]*? // s" + attr + "= ['/"]? (.*?) ['/"]? (// s.*?)?>"; matcher m = pattern.compile (reg) .matcher (แหล่งที่มา); ในขณะที่ (m.find ()) {string r = m.group (1); result.add (r); } ผลตอบแทนผลลัพธ์; } โมฆะคงที่สาธารณะหลัก (สตริง [] args) {string source = "<a title = China Sports News href = ''> aaa </a> <a title = 'Beijing Daily' Href = ''> BBB </a>"; รายการ <string> list = match (แหล่งที่มา, "a", "title"); System.out.println (รายการ); -PS: นี่คือเครื่องมือการแสดงออกปกติที่สะดวกมากสำหรับการอ้างอิงของคุณ:
JavaScript Expression Expression Online Testing Tool:
http://tools.vevb.com/regex/javascript
เครื่องมือสร้างออนไลน์การแสดงออกปกติ:
http://tools.vevb.com/regex/create_reg
ฉันหวังว่าบทความนี้จะเป็นประโยชน์กับการเขียนโปรแกรม Java ของทุกคน