1

我有一个很长的 javascript 变量文章,我正在尝试拆分其中一个小写字符紧跟一个大写字母

使用正则表达式我尝试过:

var article2 = article2.split(/(?=[A-Z][a-z])/); 

但只设法分裂每个字

4

2 回答 2

1

由于您的 JS 环境与 ECMAScript 2018 兼容(查看它支持哪些正则表达式功能),您可以使用lookbehinds

.split(/(?<=[a-z])(?=[A-Z])/)

模式是一种(?<=[a-z])向后看,需要紧邻当前位置左侧的数字,(?=[A-Z])是正向向前看,需要紧邻当前位置右侧的数字。

请参阅正则表达式演示

于 2018-07-10T14:12:12.277 回答
0

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 != '')); 

于 2018-07-09T10:21:16.657 回答