मैं एक स्ट्रिंग के सभी आवृत्तियों की स्थिति को दूसरे स्ट्रिंग में खोजने की कोशिश कर रहा हूं, केस-असंवेदनशील।
उदाहरण के लिए, दी गई स्ट्रिंग:
मैंने लेबनान में यूकुले खेलना सीखा।
और खोज स्ट्रिंग le
, मैं सरणी प्राप्त करना चाहता हूं:
[2, 25, 27, 33]
दोनों तार चर होंगे - यानी, मैं उनके मूल्यों को हार्ड-कोड नहीं कर सकता।
मुझे लगा कि यह नियमित अभिव्यक्ति के लिए एक आसान काम था, लेकिन कुछ समय के लिए संघर्ष करने के बाद, जो काम करेगा, मुझे भाग्य नहीं मिला।
मैंने इस उदाहरण को पाया कि इसका उपयोग कैसे किया जाए .indexOf()
, लेकिन निश्चित रूप से इसे करने के लिए अधिक संक्षिप्त तरीका होना चाहिए?
le
यहाँ एक चर स्ट्रिंग कैसे होगा ? यहां तक कि जबnew Regexp(str);
विशेष पात्रों के खतरे का उपयोग किया जाता है, तो वह$2.50
उदाहरण के लिए खोज करता है । कुछ ऐसाregex = new Regexp(dynamicstring.replace(/([\\.+*?\\[^\\]$(){}=!<>|:])/g, '\\$1'));
होगा जैसे कि IMHO के ज्यादा करीब होगा। मुझे यकीन नहीं है कि js में एक बिल्ट-इन regex भागने का तंत्र है।