दिलचस्प पोस्ट
जावा में एक द्विआधारी स्ट्रिंग प्रतिनिधित्व करने के लिए एक int परिवर्तित? WCF परिवहन बनाम संदेश कक्षा खंड को बढ़ाना त्रुटि क्रोम एक्सटेंशन: सामग्री स्क्रिप्ट में स्थानीय स्टोरेज एक्सेस करना कैसे सेट सीमित करने के लिए केवल "वैध" उपयोग करता है? बैच फ़ाइल में फ़ाइल सामग्री को एक वैरिएबल में कैसे पढ़ा जाए? हैशमैप # हैश (इंट) विधि का स्पष्टीकरण EF5: डेटाबेस '{1}' के रूप में फ़ाइल '{0}' संलग्न नहीं कर सकता जावा: लिटरल प्रतिशत साइन इन प्रिंटफ़ स्टेटमेंट आप जावा ऑब्जेक्ट को एचटीटीपी सत्र में कैसे संग्रहीत करते हैं? `{}` का प्रयोग करते हुए मेरे स्ट्रक्चर के सदस्यों को ठीक से शुरू करने के लिए क्यों नहीं? जावास्क्रिप्ट: एंबेड-टैग के src-attribute को बदलना .mdf डेटाबेस को अपडेट करने में विफल क्योंकि डेटाबेस केवल पढ़ने योग्य है (Windows अनुप्रयोग) पंडस डेटाफ्रेम में एक कॉलम कैसे स्थानांतरित करें जावास्क्रिप्ट: रिकर्सिव अनाम फ़ंक्शन?

जावास्क्रिप्ट में स्ट्रिंग से सभी गैर-संख्यात्मक वर्ण स्ट्रिप करें

गैर-डोम परिदृश्य पर विचार करें, जहां आप JavaScript / ECMAScript का उपयोग करके सभी गैर-संख्यात्मक वर्णों को स्ट्रिंग से निकालना चाहते हैं। 0- 9 की श्रेणी में मौजूद कोई भी अक्षर रखा जाना चाहिए।

var myString = 'abc123.8<blah>'; //desired output is 1238 

आप सादा जावास्क्रिप्ट में इसे कैसे हासिल करेंगे? कृपया याद रखें यह एक गैर- DOM परिदृश्य है, इसलिए jQuery और अन्य समाधान शामिल हैं ब्राउज़र और कुंजीप्रेस ईवेंट उपयुक्त नहीं हैं।

Solutions Collecting From Web of "जावास्क्रिप्ट में स्ट्रिंग से सभी गैर-संख्यात्मक वर्ण स्ट्रिप करें"

स्ट्रिंग की \D regex \D साथ .replace विधि का उपयोग करें, जो एक लघुकोड वर्ण वर्ग है जो सभी गैर-अंकों से मेल खाता है:

 myString = myString.replace(/\D/g,''); 

यदि आपको फ्लोट संख्या के लिए डॉट को छोड़ने की आवश्यकता है, तो इसका उपयोग करें

 var s = "-12345.50 €".replace(/[^\d.-]/g, ''); // gives "-12345.50" 

एक नियमित अभिव्यक्ति का उपयोग करें, यदि आपकी स्क्रिप्ट कार्यान्वयन उन्हें समर्थन करता है कुछ इस तरह:

 myString.replace(/[^0-9]/g, ''); 

आप सभी गैर अंकों वाले वर्णों को बदलने के लिए RegExp का उपयोग कर सकते हैं:

 var myString = 'abc123.8<blah>'; myString = myString.replace(/[^\d]/g, ''); // 1238 

की तर्ज पर कुछ:

 yourString = yourString.replace ( /[^0-9]/g, '' ); 

हम 2017 में हैं अब आप ES2016 का उपयोग भी कर सकते हैं

 var a = 'abc123.8<blah>'; console.log([...a].filter( e => isFinite(e)).join('')); 

या

 console.log([...'abc123.8<blah>'].filter( e => isFinite(e)).join('')); 

परिणाम है

 1238