【发布时间】:2019-12-16 09:26:06
【问题描述】:
我有一个原始字符串,例如“fsfsdfsdd [qwewqewe] sdfsdfdf sdfsd[sdf]”。如何从 [] 此框的内部和 [] 此框的外部获取值。 O/P fsfsdfsdd,sdfsdfdf,sdfsd & qwewqewe,sdf 是否可以使用 JavaScript RegExp?
【问题讨论】:
标签: javascript
我有一个原始字符串,例如“fsfsdfsdd [qwewqewe] sdfsdfdf sdfsd[sdf]”。如何从 [] 此框的内部和 [] 此框的外部获取值。 O/P fsfsdfsdd,sdfsdfdf,sdfsd & qwewqewe,sdf 是否可以使用 JavaScript RegExp?
【问题讨论】:
标签: javascript
试试这个解决方案:
str = "fsfsdfsdd [qwewqewe] sdfsdfdf sdfsd[sdf]";
s = str.match(/\[(\w+?)\]/g);
s.forEach(i => console.log(i));
不带方括号:
res = Array.from(str.matchAll(/\[(.+?)\]/g));
res.forEach(i => console.log(i[1]));
【讨论】:
let str = "fsfsdfsdd [qwewqewe] sdfsdfdf sdfsd[sdf]";
let regex = /(?<=\[)(.*?)(?=\])/g;
let s1 = str.match(regex); // strings in the brackets
let s2 = str.replace(regex, '').replace(/[[]]/g, '').replace(/\s/, '').split(' '); // strings outside the brackets
let result = [...s1, ...s2]
console.log(result)
【讨论】: