2013-06-14 30 views
5

Có ai đó giúp tôi truy xuất với jsoup giá trị của kiểu căn chỉnh văn bản trong ví dụ này không?truy xuất giá trị thuộc tính kiểu nội tuyến html với jsoup

<th style="text-align:right">4389</th> 

Ở đây tôi muốn có được giá trị đúng

Cảm ơn bạn!

+0

Hiện chúng tôi những gì bạn đã thực hiện cho đến bây giờ. Bạn bị mắc kẹt ở đâu. –

+0

tôi đã cố gắng để biết nếu biểu hiện của tôi đang làm việc với rằng 'Elements elt = doc.select (" [style * = 'text-align'] "); System.out.println (elt.size()); ' –

Trả lời

6

Bạn có thể truy xuất thuộc tính style của phần tử và sau đó chia nó thành :.

Ví dụ:

final String html = "<th style=\"text-align:right\">4389</th>"; 

Document doc = Jsoup.parse(html, "", Parser.xmlParser()); // Using the default html parser may remove the style attribute 
Element th = doc.select("th[style]").first(); 


String style = th.attr("style"); // You can put those two lines into one 
String styleValue = style.split(":")[1]; // TODO: Insert a check if a value is set 

// Output the results 
System.out.println(th); 
System.out.println(style); 
System.out.println(styleValue); 

Output:

<th style="text-align:right">4389</th> 
text-align:right 
right 
+0

đây là giải pháp mà tôi đã tưởng tượng cuối cùng nhưng theo một cách khác. Cảm ơn bạn @ wartai cho sự giúp đỡ của bạn. –

+1

đây là thao tác chuỗi một lần nữa với giá trị kiểu. Và điều này sẽ không hoạt động khi nhiều kiểu được thêm vào. Có cách nào trong jsoup trong đó chúng ta có các kiểu cá nhân như Element để innerStyle.attr ("text: align") có trả về "right" không? –

+0

@SaravanaPrakash có, có vẻ như doanh nghiệp chưa hoàn thành. Ý tôi là, thật dễ dàng để tạo ra một regex sẽ trích xuất nhiều khóa-giá trị "đúng cách" nhưng có vẻ như JSoup có thể muốn xử lý nó như là tiêu chuẩn ... ví dụ, bây giờ tôi đang tự hỏi mình phải tìm đến đâu tìm hiểu xem các ký tự nào được phép hợp pháp là "khóa" và là "giá trị"; giả sử rằng bạn có thể có không gian màu trắng tùy ý ở hai bên của dấu hai chấm, v.v ...: các chi tiết này phải được xử lý bởi gói JSoup ... –

Các vấn đề liên quan