php - Regex matching table rows in HTML -


संभव डुप्लिकेट:

मुझे प्राथमिकताओं के साथ तालिका पंक्तियों में एक समस्या का सामना करना पड़ रहा है यहां मेरी अभिव्यक्ति है:

  & lt; tr [az \ = \ "a-z0- 9] * & gt; ([\ {\} \ (\) \ ^ \ = \ $ \ & amp; \ \ _ \% \ # \ \ @ \ = \ & LT; \ & gt; \:।!? \; \, \ ~ \ `\ '\ * \ \ / \ + \ | \ [\] \ | \ -एक-zA-Z0-9à ?? - ÿ \ n \ r] *) के & lt; \ / टीआर & gt;   

आप देख सकते हैं, यह सब कुछ मच करने के लिए कोशिश करता है in- टीआर टैग (सभी प्रतीकों सहित) के बीच यह हिस्सा महान काम करता है, हालांकि कई तालिका पंक्तियों के साथ व्यवहार करते समय, अक्सर प्रत्येक तालिका पंक्ति के लिए एक मैच के बजाय एक तालिका के रूप में एकाधिक तालिका पंक्तियां लेती हैं:

  & lt; टीआर & gt; & lt; टीडी & gt; परीक्षण & lt; / टीडी & gt; & lt; / टीआर & gt; & lt; टीआर & gt; & lt; टीडी & gt; test2 & lt; / टीडी & gt; & lt; / टीआर & gt;   

पैदावार:

  सरणी ([0] = & gt; & lt; टीडी & gt; परीक्षण & lt; / टीडी & gt; & lt; टीडी & gt; test2 & lt; / टीडी & gt;)   

के बजाय क्या मैं इसे करना चाहते हैं: (; & lt; टीडी & gt; परीक्षण & lt; / टीडी & gt; [1] = & gt; & lt; टीडी & gt; test2 & lt; / टीडी & gt; [0] = & gt)

  सरणी < / कोड>  

मुझे पता है कि इसका कारण यह है क्योंकि यह प्रतीकों से मेल खाता है, और खोज स्वाभाविक रूप से शेष पंक्तियों को तब तक लेती है जब तक कि यह आखिरी हिट तक नहीं चलता।

Lly, मैं सोच रहा हूँ कि कोई मुझे अभिव्यक्ति में जोड़ने में मदद कर सकता है ताकि यह टीआर टैग के बीच "TR" के साथ कुछ भी अलग करे, क्योंकि उसे कई पंक्तियों से मिलान करने से रोकने के लिए।

वैश्विक खोज का उपयोग कर प्रयास करें:

<कोड> preg_match_all ( "/ & LT; टीडी & gt; ([^ & LT;]) / ", $ Html, $ मैच);

Comments

Popular posts from this blog

mysql - BLOB/TEXT column 'value' used in key specification without a key length -

c# - Using Vici cool Storage with monodroid -

python - referencing a variable in another function? -