我有一个很长的 javascript 变量文章,我正在尝试拆分其中一个小写字符紧跟一个大写字母
使用正则表达式我尝试过:
var article2 = article2.split(/(?=[A-Z][a-z])/);
但只设法分裂每个字
我有一个很长的 javascript 变量文章,我正在尝试拆分其中一个小写字符紧跟一个大写字母
使用正则表达式我尝试过:
var article2 = article2.split(/(?=[A-Z][a-z])/);
但只设法分裂每个字
由于您的 JS 环境与 ECMAScript 2018 兼容(查看它支持哪些正则表达式功能),您可以使用lookbehinds:
.split(/(?<=[a-z])(?=[A-Z])/)
模式是一种(?<=[a-z])
向后看,需要紧邻当前位置左侧的数字,(?=[A-Z])
是正向向前看,需要紧邻当前位置右侧的数字。
请参阅正则表达式演示。
var article2 = "SplitJavaScriptString";
// you are doing this (include Small case & Upper case)
console.log(article2.split(/(?=[A-Z][a-z])/));
// is this what you want (exclude Small case & Upper case)
console.log(article2.split(/[A-Z][a-z]/).filter(e => e != ''));