簡體   English   中英

如何使用正則表達式刪除字符串中的方括號?

[英]How to remove square brackets in string using regex?

['abc','xyz'] - 這個字符串我想在 javascript 中使用正則表達式變成abc,xyz 我想用空字符串替換左方括號和單引號,即""

使用此正則表達式匹配方括號或單引號:

/[\[\]']+/g

替換為空字符串。

 console.log("['abc','xyz']".replace(/[\\[\\]']+/g,''));

str.replace(/[[\\]]/g,'')

給你

var str = "['abc',['def','ghi'],'jkl']";
//'[\'abc\',[\'def\',\'ghi\'],\'jkl\']'
str.replace(/[\[\]']/g,'' );
//'abc,def,ghi,jkl'

您可能甚至不需要字符串替換。 如果您的原始字符串是 JSON,請嘗試:

js> a="['abc','xyz']"
['abc','xyz']
js> eval(a).join(",")
abc,xyz

當然要小心eval

只是在這里提出一個我覺得更具可讀性的替代方案。

/\[|\]/g

JavaScript 實現:

let reg = /\[|\]/g

str.replace(reg,'')

正如其他人所展示的,您所要做的就是列出[]字符,但因為它們是特殊字符,所以您必須用\\將它們轉義。

我個人認為使用[]的字符組定義令人困惑,因為它使用您要替換的相同特殊字符。

因此使用| (OR) 運算符,您可以更輕松地將正則表達式中的特殊字符與被替換的文字字符區分開來。

這應該適合你。

str.replace(/[[\]]/g, "");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM