से नंबर प्राप्त स्ट्रिंग इसजावास्क्रिप्ट/jQuery - स्ट्रिंग
"blabla blabla-5 amount-10 blabla direction-left"
तरह लग रहा है मैं सिर्फ "amount-"
के बाद नंबर कैसे प्राप्त कर सकते हैं, और "direction-"
के तुरंत बाद ही पाठ?
से नंबर प्राप्त स्ट्रिंग इसजावास्क्रिप्ट/jQuery - स्ट्रिंग
"blabla blabla-5 amount-10 blabla direction-left"
तरह लग रहा है मैं सिर्फ "amount-"
के बाद नंबर कैसे प्राप्त कर सकते हैं, और "direction-"
के तुरंत बाद ही पाठ?
यह regular expressions उपयोग करता है और exec method:
var s = "blabla blabla-5 amount-10 blabla direction-left";
var amount = parseInt(/amount-(\d+)/.exec(s)[1], 10);
var direction = /direction-([^\s]+)/.exec(s)[1];
कोड एक त्रुटि का कारण होगा यदि राशि या दिशा लापता है; यदि यह संभव है, तो जांच करें कि निष्पादन का परिणाम वापस आने वाले सरणी में अनुक्रमणित करने से पहले गैर-शून्य है या नहीं।
धन्यवाद कि यह था :) – Alex
आप रेगेक्सपी का उपयोग by w3schools समझा सकते हैं। सुझाव:
str = "blabla blabla-5 amount-10 blabla direction-left"
alert(str.match(/amount-([0-9]+)/));
Otherwize आप बस चाहते हैं सभी नंबरों को तो पैटर्न [0-9] + केवल उपयोग कर सकते हैं। str.match एक सरणी लौटाएगा।
उह-ओह http://w3fools.com/ –
यह सभी नंबरों को कोमा द्वारा अलग हो जाएगा:
var str = "10 is smaller than 11 but greater then 9"; var pattern = /[0-9]+/g; var matches = str.match(pattern);
निष्पादन के बाद, स्ट्रिंग matches
मूल्यों "10,11,9"
होगा तुम बस thew पहली घटना के लिए देख रहे हैं, पैटर्न /[0-9]+/
हो जाएगा - जो वापस आ जाएगी 10
यह सबसे प्रभावी तरीका है। धन्यवाद! –
Fol (JQuery के लिए कोई जरूरत नहीं है) क्या नियम कम करना? सभी नंबर निकालें? वांछित परिणाम, एक सरणी क्या है? –
नहीं, बस उन पैरामीटर के बाद संख्या/स्ट्रिंग। आउटपुट एक स्ट्रिंग होना चाहिए – Alex