दिलचस्प पोस्ट
std :: नक्शा डिफ़ॉल्ट मान फेसबुक ग्राफ़ एपीआई, उपयोगकर्ताओं को ईमेल कैसे प्राप्त करें? क्या आप एचटीएमएल 5 वेब ऐप से देशी कैमरा ऐप लॉन्च कर सकते हैं? अच्छा शुरुआती ट्यूटोरियल socket.io? जावा कम्पाइलर द्वारा अनुकूलन कैसे PHP में डेटाबेस पासवर्ड को सुरक्षित करना है? सरल एक्सएमएल के साथ एक्सएमएल ऑब्जेक्ट के माध्यम से लूप कोण से इंजेक्टर को पुनः प्राप्त नहीं किया जा सकता जावास्क्रिप्ट चेतावनी फ़ायरफ़ॉक्स 6 में काम नहीं कर रहा है HTTP पुनर्निर्देशन पर हेडर अग्रेषित कैसे करें scanf दूसरी बार इनपुट के लिए नहीं पूछेगा रेफरी बनाम आउट का उपयोग कब करना सशर्त ऑपरेटर निहित नहीं डाल सकते हैं? आईओएस बनाता है / आईपीए निर्माण अब कमांड लाइन से काम नहीं करता दो तिथियों के बीच महीनों में अंतर

स्ट्रिंग से एचटीएमएल टैग को हटाने के लिए नियमित अभिव्यक्ति

संभव डुप्लिकेट:
एचटीएमएल टैग को हटाने के लिए नियमित अभिव्यक्ति

क्या एक अभिव्यक्ति है, जो दो HTML टैग्स के बीच का मान प्राप्त कर सकता है?

अगर यह दिया रहे:

<td class="played">0</td> 

मैं एक ऐसे अभिव्यक्ति की तलाश कर रहा हूं जो 0 लौट आएगा, <td> टैग को छीनने के लिए।

Solutions Collecting From Web of "स्ट्रिंग से एचटीएमएल टैग को हटाने के लिए नियमित अभिव्यक्ति"

निम्नलिखित उदाहरण जावा हैं, लेकिन regex समान होगा – अगर समान नहीं – अन्य भाषाओं के लिए


 String target = someString.replaceAll("<[^>]*>", ""); 

मान लें कि आपके गैर-html में कोई भी <या> नहीं है और यह कि आपका इनपुट स्ट्रिंग सही ढंग से संरचित है।

यदि आप जानते हैं कि वे विशिष्ट टैग हैं – उदाहरण के लिए आप जानते हैं कि पाठ में केवल <td> टैग हैं, तो आप ऐसा कुछ कर सकते हैं:

 String target = someString.replaceAll("(?i)<td[^>]*>", ""); 

संपादित करें: एमेगा ने एक और पोस्ट पर एक टिप्पणी में एक अच्छा मुद्दा लाया है कि इसके परिणामस्वरूप एकाधिक परिणामों को एक साथ जोड़ दिया जाएगा, यदि एकाधिक टैग हों

उदाहरण के लिए, यदि इनपुट स्ट्रिंग <td>Something</td><td>Another Thing</td> , तो इसके बाद के संस्करण के परिणामस्वरूप SomethingAnother Thing परिणाम होगा।

ऐसे स्थिति में जहां कई टैग्स अपेक्षित हैं, हम ऐसा कुछ कर सकते हैं:

 String target = someString.replaceAll("(?i)<td[^>]*>", " ").replaceAll("\\s+", " ").trim(); 

यह एचटीएमएल को एक स्थान के साथ बदल देता है, फिर सफेद स्थान को गिरता है, और फिर सिरों पर किसी को भी ट्रिम करता है

एक तुच्छ दृष्टिकोण को प्रतिस्थापित करना होगा

 <[^>]*> 

किसी के साथ नहीं। लेकिन आपके इनपुट के बारे में कितनी अच्छी तरह से असफल हो सकता है, इसके आधार पर।

आप इसे jsoup http://jsoup.org/ के साथ कर सकते हैं

 Whitelist whitelist = Whitelist.none(); String cleanStr = Jsoup.clean(yourText, whitelist);