簡體   English   中英

刪除字符串開頭和結尾的多個字符中的任何一個

[英]Remove any of multiple characters at beginning and end of string

我想刪除以下字符: [ , ] , " , \如果有的話在字符串的開頭或結尾,但如果它們在中間則不會。

所以,如果字符串是""\[\]][hello" world "\[\"]] ,我希望它變成, hello" world

我不知道該怎么做。 我已經嘗試了這些和許多其他方法,但似乎沒有一個有效:

string.replace(/^[\[+|\]+|\"+|\\+]$,"")
string.replace(/^[\[+\]+\"+\\+]$/,"")

任何幫助將非常感激。

你很近。 您需要兩種選擇,一種用於開始,另一種用於結束。 然后每個應該是[]中的一個字符集,列出您要刪除的所有字符。

您還需要g修飾符在同一字符串中替換兩次。

 let string = '""\[\]][hello" world "\[\"]]'; console.log(string.replace(/^["\[\]\\]+|["\[\]\\]+$/g, ''));

我將問題拆分為以下子問題:

  1. 在字符串的開頭找到這些字符
  2. 在字符串的末尾找到這些字符

我想出了以下正則表達式模式來解決這些問題:

  1. /(^["\[]]+)/g
  2. /["\[]]+$/g

使用正則表達式時,我推薦以下站點:regexr.com/6d193

暫無
暫無

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

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