मैं एक स्ट्रिंग है कि मैं 6. की एक समान लंबाई मैं उपयोग करने की कोशिश के साथ छोटे तार में विभाजित की जरूरत है की सरणी में विभाजित करें स्ट्रिंग :समान लंबाई तार
["", "abcdef", "", "ghijkl", "", "mnopqr", "", "stuvwx", ""]
मैं एक स्ट्रिंग है कि मैं 6. की एक समान लंबाई मैं उपयोग करने की कोशिश के साथ छोटे तार में विभाजित की जरूरत है की सरणी में विभाजित करें स्ट्रिंग :समान लंबाई तार
["", "abcdef", "", "ghijkl", "", "mnopqr", "", "stuvwx", ""]
एक वैश्विक ध्वज के साथ संयोजन के रूप में उपयोग match
, विभाजन के बजाय। मिलान किए गए स्ट्रिंग के अंतिम भाग को भी शामिल करने के लिए {1,6}
आवश्यक है। पैटर्न डिफ़ॉल्ट रूप से लालची हैं, जिसका अर्थ है कि जितना संभव हो उतना मिलान किया जाता है। तो, .{1,6}
केवल एक स्ट्रिंग के अंत में कम से कम 6 अक्षर से मेल खाएगी।
'abcdefghijklmnopqrstuvwxyz'.match(/.{1,6}/g);
परिणाम:
["abcdef", "ghijkl", "mnopqr", "stuvwx", "yz"];
ध्यान दें कि लौटे वस्तु एक सच्चे सरणी है। सत्यापित करने के लिए:
console.log('.'.match(/./g) instanceof Array); //true
वर्क्स एक आकर्षण की तरह! धन्यवाद! – trumank
ध्यान दें कि '.' * * किसी भी चरित्र से मेल नहीं खाता है। यह (http://es5.github.io/#x15.10.2.8) [ 'Lineterminator's पर ध्यान नहीं देता]। यह सुनिश्चित करने के लिए '[\ s \ S] 'का उपयोग करें कि यह बहु-पंक्ति तारों पर काम करता है। – user123444555621