"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > HTML टैग से सामग्री निकालते समय मैं रेगेक्स में न्यूलाइन वर्णों का मिलान कैसे कर सकता हूँ?

HTML टैग से सामग्री निकालते समय मैं रेगेक्स में न्यूलाइन वर्णों का मिलान कैसे कर सकता हूँ?

2024-11-21 को प्रकाशित
ब्राउज़ करें:781

How Can I Match Newline Characters in Regex When Extracting Content from HTML Tags?

DOTALL रेगेक्स संशोधक के साथ न्यूलाइन वर्णों का मिलान करें

एचटीएमएल डिव टैग में संलग्न सामान्य वर्ण, व्हाइटस्पेस और न्यूलाइन वाली स्ट्रिंग के साथ काम करते समय, लक्ष्य नियमित अभिव्यक्तियों का उपयोग करके

और
के बीच की सामग्री को निकालना है। एक सामान्य समस्या तब उत्पन्न होती है जब मानक .* मेटाकैरेक्टर नई लाइनों से मेल खाने में विफल रहता है।

इस पर काबू पाने के लिए, किसी को DOTALL संशोधक को नियोजित करना होगा। यह संशोधक सुनिश्चित करता है कि डॉट वर्ण (रेगेक्स में) न्यूलाइन सहित सभी वर्णों से मेल खाता है। इस संशोधक को रेगेक्स में शामिल करने से, div टैग के भीतर सामग्री को सटीक रूप से कैप्चर करना संभव हो जाता है:

'/
(.*)/s'

हालाँकि, इस दृष्टिकोण के परिणामस्वरूप लालची मेल हो सकते हैं। इसे संबोधित करने के लिए, एक गैर-लालची मिलान का उपयोग करने की अनुशंसा की जाती है:

'/
(.*?)/s'

वैकल्पिक रूप से,

'/
([^

यह ध्यान देने योग्य है कि रेगेक्स सीमांकक के रूप में / के अलावा किसी अन्य वर्ण का उपयोग करने से सुधार हो सकता है पठनीयता, /इन

से बचने की आवश्यकता को समाप्त करती है। यहां # को परिसीमक के रूप में उपयोग करने का एक उदाहरण दिया गया है:
'#
([^

हालांकि ये समाधान साधारण मामलों के लिए पर्याप्त हो सकते हैं, यह यह स्वीकार करना महत्वपूर्ण है कि HTML जटिल है और अकेले रेगेक्स पार्सिंग पर्याप्त नहीं हो सकती है। व्यापक और विश्वसनीय पार्सिंग सुनिश्चित करने के लिए, एक समर्पित HTML पार्सर का उपयोग करने पर विचार करना उचित है।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3