निम्नलिखित में एक स्ट्रिंग के प्रत्येक शब्द के पहले अक्षर को कैपिटल करना हालांकि निरर्थक, पूरी तरह से काम करता है:का उपयोग करते हुए की जगह और regex, जावास्क्रिप्ट
'leap of, faith'.replace(/([^ \t]+)/g,"$1");
और प्रिंट "की, विश्वास छलांग", लेकिन में निम्नलिखित :
'leap of, faith'.replace(/([^ \t]+)/g,RegExp.$1);
यह प्रिंट "विश्वास विश्वास विश्वास"
परिणामस्वरूप जब मैं की तरह प्रत्येक शब्द के पहले अक्षर को कैपिटल करना चाहते हैं के रूप में:
'leap of, faith'.replace(/([^ \t]+)/g,RegExp.$1.capitalize());
यह काम नहीं करता है। न तो करता है,
'leap of, faith'.replace(/([^ \t]+)/g,"$1".capitalize);
क्योंकि यह शायद समूह के मूल्य प्रतिस्थापन से पहले "$ 1" फ़ायदा उठाने की।
मैं आप "() .replace" के दूसरे तर्क के रूप में एक समारोह पारित कर सकते हैं प्रोटोटाइप भुनाने() विधि
आप '.toUpperCase()' विधि का उपयोग क्यों नहीं करते? –
जो स्ट्रिंग में सभी वर्णों को ऊपरी मामले में परिवर्तित करता है, और ओपी केवल पहले अक्षर को परिवर्तित करना चाहता है। – Pointy
आप 'str.replace (/ \ b [a-z]/g, function() {वापसी तर्क [0] .toUpperCase()} के साथ अपर + आपके उत्तर का उपयोग कर सकते हैं) ' –