我想删除字符串周围的“”。
例如,如果字符串是:“I am here”,那么我只想输出I am here。
我想删除字符串周围的“”。
例如,如果字符串是:“I am here”,那么我只想输出I am here。
当前回答
如果字符串保证在开头和结尾有一个引号(或任何其他单个字符),你想删除:
str = str.slice(1, -1);
Slice的开销比正则表达式小得多。
其他回答
如果你可以控制你的数据,你知道你的双引号包围字符串(所以不出现在字符串中),字符串是一个整数…用:
"20151212211647278"
或者类似的,这很好地删除了周围的引号
JSON.parse("20151212211647278");
这不是一个通用的答案,但巧妙地满足了利基需求
使用replaceAll
const someStr = 'He said "Hello, my name is Foo"';
console.log(someStr.replaceAll('"', ''));
// => 'He said Hello, my name is Foo'
这个简单的代码也可以工作,例如从双引号包围的字符串中删除双引号:
var str = 'remove "foo" delimiting double quotes';
console.log(str.replace(/"(.+)"/g, '$1'));
这工作…
var string1 = "'foo'"; var string2 = '"bar"'; function removeFirstAndLastQuotes(str){ var firstChar = str.charAt(0); var lastChar = str[str.length -1]; //double quotes if(firstChar && lastChar === String.fromCharCode(34)){ str = str.slice(1, -1); } //single quotes if(firstChar && lastChar === String.fromCharCode(39)){ str = str.slice(1, -1); } return str; } console.log(removeFirstAndLastQuotes(string1)); console.log(removeFirstAndLastQuotes(string2));
如果你想要老派,使用REGEX 1,$s/"//g