Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> JavaScript

JavaScript में रेगुलर एक्सप्रेशन से कोलन के बाद केवल पहला अक्षर कैपिटल कैसे करें?

replace() के साथ रेगुलर एक्सप्रेशन और कॉलबैक फंक्शन से कोलन (:) के बाद आने वाले पहले अक्षर को अपरकेस करें।

बुनियादी समाधान

function capitalizeFirstAfterColon(str) {
    // : के बाद वैकल्पिक स्पेस फिर कोई भी कैरेक्टर
    return str.replace(/(:)\s*(.)/g, (match, colon, char) => {
        return colon + ' ' + char.toUpperCase();
    });
}

const input = 'fullName: john Smith';
console.log(capitalizeFirstAfterColon(input)); 
// "fullName: John Smith"

रेगुलर एक्सप्रेशन विश्लेषण

/(:)\s*(.)/g
// (:)     - कैप्चर ग्रुप 1: कोलन
// \s*     - शून्य या अधिक स्पेस
// (.)     - कैप्चर ग्रुप 2: कोई भी सिंगल कैरेक्टर
// g       - ग्लोबल (सभी घटनाएं)

एकाधिक कोलन वाले स्ट्रिंग के लिए

const multi = "name: john, city: new york, country: usa";
console.log(capitalizeFirstAfterColon(multi));
// "name: John, city: New york, country: Usa"

केवल पहला शब्द कैपिटल करें (पूरा नहीं)

function capitalizeFirstWordAfterColon(str) {
    return str.replace(/(:)\s*(\w+)(\w*)/g, (match, colon, firstChar, rest) => {
        return colon + ' ' + firstChar.toUpperCase() + rest.toLowerCase();
    });
}

console.log(capitalizeFirstWordAfterColon("name: john SMITH"));
// "name: John smith"

चलाने का तरीका

node capitalize-after-colon.js

आउटपुट

fullName: John Smith

वेरिएशन्स

आवश्यकतारेगुलर एक्सप्रेशनउदाहरण
कोलन के बाद पहला अक्षर/(:)\s*(.)/ga: b → a: B
कोलन के बाद पहला शब्द/(:)\s*(\w+)/ga: hello world → a: Hello world
सेमीकोलन भी/([:;])\s*(.)/ga; b → a; B
लाइन शुरूआत/^(\s*)(\w)/gmप्रत्येक लाइन का पहला अक्षर
  1. - MySQL फंक्शन की मदद से स्ट्रिंग के केवल पहले अक्षर को बड़ा कैसे करें?

    वास्तव में, MySQL में स्ट्रिंग के केवल पहले अक्षर को बड़ा करने के लिए कोई एकल फंक्शन नहीं है। हमें फंक्शन्स की नेस्टिंग का उपयोग करने की आवश्यकता है और इस मामले में, हम UPPER() और LOWER() के साथ SUBSTRING() फंक्शन्स का उपयोग कर सकते हैं। इसे समझने के लिए, हम emp_tbl से नीचे दिए गए डेटा का उपयोग कर

  1. - MySQL: सभी रिकॉर्ड अपडेट करें ताकि केवल पहला अक्षर बड़ा हो और बाकी छोटे

    समाधान UPPER, LOWER, LEFT, SUBSTRING और REPLACE फंक्शन का संयोजन उपयोग करें। उदाहरण टेबल बनाएं और डेटा डालें: INSERT INTO DemoTable2017 VALUES (CHRIS BROWN,JAVA); अपडेट क्वेरी SET Name = REPLACE( CONCAT(UPPER(LEFT(Name, 1)), LOWER(SUBSTRING(Name, 2))), , , , ); परिणाम +--------

  1. - MySQL में कॉलम मान के पहले अक्षर को प्राप्त करके दूसरे कॉलम में डालें

    समाधान LEFT() फंक्शन का उपयोग करके पहले अक्षर को निकालें और UPDATE से दूसरे कॉलम में स्टोर करें। उदाहरण टेबल बनाएं: INSERT INTO DemoTable2036 (Title) VALUES (Chris), (John), (Adam); अपडेट क्वेरी UPDATE DemoTable2036 SET FirstLetter = LEFT(Title, 1); परिणाम +-------------+-------+ | FirstLetter