Javascript 如何删除字符串中的所有空白,除非所述字符串的一部分被节点中的特定字符包围?

Javascript 如何删除字符串中的所有空白,除非所述字符串的一部分被节点中的特定字符包围?,javascript,node.js,Javascript,Node.js,假设我们有这个字符串: this is an example: 'this is too' 我需要这个输出: thisisanexample:'this is too' 我需要一种方法来删除字符串中的空白,除非任何给定的部分都被一个字符包围,在本例中为“”” 如果有帮助的话,我找到了这篇文章,但它是用python编写的,我几乎不知道如何翻译它 如果您想知道,这是针对数据解析器的。您可以使用以下方法完成此行为:&使用以下性感的一行代码: const trimString = str =>

假设我们有这个字符串:

this is an example: 'this is too'
我需要这个输出:

thisisanexample:'this is too'
我需要一种方法来删除字符串中的空白,除非任何给定的部分都被一个字符包围,在本例中为“

如果有帮助的话,我找到了这篇文章,但它是用python编写的,我几乎不知道如何翻译它


如果您想知道,这是针对数据解析器的。

您可以使用以下方法完成此行为:&使用以下性感的一行代码:

const trimString = str => str[0] == "'" ? str : str.trim()

trimString('\'  John Snow  \'')
trimString('  John Summer ')

检查。

基本上与您在python中提到的一样,此代码拆分(使用)字符串,然后迭代新数组,并检查迭代的当前元素是否是应删除空格的字符串的一部分(例如,第一个元素索引为[0])不是
'
内字符串的一部分,检查由
%
完成,如果不是,它将再次将其添加到
'
中,最后它将调用数组及其元素以获取新字符串

所以我想这就是你想要的:

函数splitStr(str){
设strArr=str.split(“”);
let newStr=“”;
strArr.forEach((el,i)=>{
如果(i%2==0){
strArr[i]=标高替换(/\s/g');
}
否则{
strArr[i]=`${strArr[i]}`;
}
})
返回strArr.filter(String.join)(“”);
}
let str=“这是一个例子:'这太可怕了';
console.log(splitStr(str));
让str1=“(‘测试2’:‘结果’)”;
console.log(splitStr(str1));
设str2=“(‘测试2’:结果)”;

console.log(splitStr(str2))这是非常有用的,但不完全是我需要的。我需要它删除所有空格,除了被所述字符(
)包围的空格之外,如果它以
开头,它只会返回自身。在这种情况下,需要使用
split()
方法将
字符串
转换为
数组
,创建
函数
以删除第一个和最后一个字符,并使用
join()
方法将
数组
再次转换为
字符串
。您能告诉我们i%2==0的原因吗?@snr好的,我正在添加解释。非常感谢!我正在用
('test2':'result')
测试它,它给了我
“test2':'result'
预期的结果!