我知道如何仅删除: Motor
,但我该如何删除多项内容?
我必须删除3件事,两件[
,'
& [
和空格]
我打印时的字符串是这样的:
非常感谢你!
答案 0 :(得分:1)
var s1 = "this is a test string.";
s1.slice(3, s1.length-3);
或者您可以使用正则表达式替换额外的字符串([,],',......)
s1.replace(^\[\s'(.*)'\s\]$/, '$1');
答案 1 :(得分:0)
您可以使用RegEx删除大括号和引号。
var newstring = oldstring.replace(/[\[\]']/gi, '');
要删除空格,请使用newstring = newstring.trim();
答案 2 :(得分:0)
您可以使用正则表达式并将第一个捕获组(第一轮括号的内部)用作$1
函数中的string.replace
,例如:
"[ 'Chroma 2 Case' ]".replace(/^\[\s*'(.*)'\s*\]$/, '$1')
解释:https://regex101.com/r/TGWCVn/1
P.S。:也适用于带有[ 'Chroma 2\' Case' ]
修改:如果需要支持各种报价:
'["StatTrak™ R8 Revolver | Crimson Web (Battle-Scarred)"]'.replace(
/^\[\s*['"](.*)['"]\s*\]$/,
'$1'
)
edit2 :如果你有一个数组而不是字符串,那就得到第一项:
["StatTrak™ R8 Revolver | Crimson Web (Battle-Scarred)"][0]
答案 3 :(得分:0)
您可以拆分引号,前提是您不再期待字符串
const test = "[ \'Chroma 2 Case\' ]"
test.split('\'')[1]
答案 4 :(得分:0)
对任何带正则表达式的字符串使用replace方法。在你的情况下:
let originalString = "[ 'Chroma 2 Case' ]";
let newString = originalString.replace(/[\[\]\'\s]/g, '');
通常你会在字符串上使用trim()来删除空格,但是因为你已经在使用[
,]
和'
的正则表达式,所以{{匹配正则表达式中的1}}也会处理任何空格。
答案 5 :(得分:0)
我使用了.toString(),现在它可以工作了。谢谢大家!