【发布时间】:2019-04-22 14:10:51
【问题描述】:
我有一个带引号和空格的字符串,例如' TEST 123 ' 或" TEST 123 "。如何删除单词外的空格和引号,并在单词之间留一个空格。预期结果:TEST 123
【问题讨论】:
-
请与我们分享您的尝试
-
这里是你的逻辑,
trim,split,trim,join
标签: javascript regex
我有一个带引号和空格的字符串,例如' TEST 123 ' 或" TEST 123 "。如何删除单词外的空格和引号,并在单词之间留一个空格。预期结果:TEST 123
【问题讨论】:
trim,split,trim,join
标签: javascript regex
你可以使用这个正则表达式,
^[ '"]+|[ '"]+$|( ){2,}
并用$1 替换它,其中$1 捕获单个空格,但例如有两个或多个空格。
这里,^[ '"]+ 匹配字符串开头的一个或多个空格或单引号或双引号,同样[ '"]+$ 也匹配字符串末尾的任何空格或单引号或双引号一个或多个,并替换为空字符串其中 ( ){2,} 匹配(仍待在字符串中间匹配)被替换为 group1 中捕获的单个空格。
示例 JS 演示,
var arr = ["' TEST 123 '",'" TEST 123 "'];
for (s of arr) {
console.log(s + " --> " + s.replace(/^[ '"]+|[ '"]+$|( ){2,}/g,'$1'));
}
【讨论】:
remove extra spaces in string javascript
newString = string.replace(/\s+/g,''); // "thiscontainsspaces"
newString = string.replace(/\s+/g,' ').trim();
【讨论】: