अगर मेरे पास एक स्ट्रिंग है जो इस तरह दिखती है:
let oldString = '[foo faa] [faaaa] [feee foo] [fu]';
निम्नलिखित को वापस करने के लिए मैं इसे कैसे विभाजित कर सकता हूं:
let newArr = ['[foo faa]','[faaaa]','[feee foo]','[fu]'];
तो मैं इसे हर ']' चरित्र में विभाजित करना चाहता हूं, लेकिन उस चरित्र को नई सरणी में रखना चाहता हूं।
मैंने oldString.split(']')
की कोशिश की है, लेकिन यह सरणी को उस आकार में वापस नहीं करता है जिसकी मुझे उम्मीद थी।
3
Daft
27 नवम्बर 2020, 12:25
3 जवाब
सबसे बढ़िया उत्तर
आप बाएँ और दाएँ सीमांकक के साथ भागों का मिलान कर सकते हैं।
let string = '[foo bar] [faaaa] [feee] [fu]',
array = string.match(/\[[^\]]+\]/g);
console.log(array);
5
Nina Scholz
27 नवम्बर 2020, 12:31
यदि आप String#split
का उपयोग करने का आग्रह करते हैं:
let oldString = '[foo faa] [faaaa] [feee foo] [fu]';
const result = oldString.split(/(?<=\])\s*(?=\[)/);
console.log(result);
0
Hao Wu
27 नवम्बर 2020, 12:39
आप नीचे उत्तर पा सकते हैं।
let oldString = '[foo faa] [faaaa] [feee foo] [fu]';
let newStringArr = oldString.split(" ").join(',').replace(/\],\[/gi, "],d[").split(",d")
console.log(newStringArr);
document.write(JSON.stringify(newStringArr))
0
cangokceaslan
27 नवम्बर 2020, 12:44