javascript - JS Regex - Replace multiple instances in a string -
मेरे पास यह स्ट्रिंग है:
var str = '"testFN, II testLN, II "& Lt; Test1@test.com> ;, "testFN, कैल टेस्ट एलएन, कैल" & lt; test2@test.com> '; और मैं कर रहा हूं
str.replace (/(".*?) ,(.*?")/ g, '$ 1__comma_ $ 2 '); एक स्ट्रिंग (__ कॉमा_) के साथ कई अल्पविराम (,) को बदलने के लिए, केवल अंदर।
घटना हालांकि मैंने दिया / g सभी सभी जगहों की जगह नहीं । यह प्रत्येक उदाहरण का केवल पहला मैच बदलता है।
वास्तविक परिणाम: "testFN__comma_ II testLN, II" & lt; Test1@test.com> ;, "testFN__comma_ testLN, कैल" & lt; test2@test.com> अपेक्षित परिणाम: "testFN__comma_II testLN__comma_ II" & lt; Test1@test.com> ;, "testFN__comma_cal testLN__comma_cal" & lt; Test2@test.com>
क्या आप कृपया कोई सुझाव दे सकते हैं जो मुझे कुछ भी याद आ रही है?
आलसी क्वांटिफायर की कोशिश करें:
("। * ?,) (। *?") हालांकि आपके प्रतिस्थापन प्रभावी नहीं होंगे क्योंकि आप उस अल्पविराम की जगह नहीं ले रहे हैं! तो मैं अपने regex को थोड़ा संशोधित करने जा रहा हूँ:
("। *?), (। *?") अपडेट
अपने नए अपडेट के आधार पर, मैंने एक और रेगेक्स बनाया जो कि पिछले एक से बिल्कुल अलग है।
str.replace (/ (,) (? = [^ "] * [^ \ S]") / जी, '__ कॉममा_');
Comments
Post a Comment