根据条件分割 JavaScript 字符串

2023-12-20

我可以在 JavaScript 中使用 split 来用逗号 (,) 分隔字符串。我的字符串如下:

"Hojas, DNI, Factura {Con N° de O/C impresa, otra cosa}, Pasaporte, Permiso"    

结果应该是:

["Hojas", "DNI", "Factura {Con N° de O/C impresa, otra cosa}", "Pasaporte", "Permiso"]

我尝试执行以下操作:

"Hojas, DNI, Factura {Con N° de O/C impresa, otra cosa}, Pasaporte, Permiso".split(/,\s+(.+\s{.+})?/g)

但我得到以下结果:["Hojas", "DNI, Factura {Con N° de O/C impresa, otra cosa}", "", undefined, "Pasaporte", undefined, "Permiso"]


假设没有未配对或嵌套的{},你可以使用(?![^{}]*})前瞻以确保没有关闭}逗号后:

\s*,\s*(?![^{}]*})

See 正则表达式演示 https://regex101.com/r/aE4gJ3/1

还有一个片段:

var re = /\s*,\s*(?![^{}]*})/g; 
var str = 'Hojas, DNI, Factura {Con N° de O/C impresa, otra cosa}, Pasaporte, Permiso';
var res = str.split(re);
for (var i=0; i<res.length; i++) {
  document.write(res[i]+ "<br/>");
}

The \s*用于修剪结果数组条目。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

根据条件分割 JavaScript 字符串 的相关文章