我有以下RegEx,它应该修剪字符串开头和结尾处的可选空白或引号。
/(^[\s|"]*)(.*)([\s|"])/
我有演示here。
它适用于以下情况:
"Web_1,art_1"
但由于以下原因而中断:
Web_1,art_1
我无法在工作结束时得到可选的报价。
答案 0 :(得分:4)
尝试此正则表达式:
^[\s"]*|[\s"]*$
将每个匹配项替换为空白字符串
说明:
^[\s"]*
-在字符串的开头匹配0+次出现的空白或"
|
-或[\s"]*$
-在字符串末尾匹配0+次出现的空格或"
答案 1 :(得分:1)
像在开头一样在结尾处添加星星。然后将.*
与.*?
设为非贪婪:您希望尾随组(而不是内部的)匹配尾随空格或引号。
/(^[\s|"]*)(.*?)([\s|"]*)/
此外,为了对称起见,请在末尾添加一个$
锚,并删除|
。替换条不属于[...]
字符类之内。
/(^[\s"]*)(.*?)([\s"]*$)/
也没有理由拥有外部捕获组。
/^[\s"]*(.*?)[\s"]*$/