我有很长的javascript变量文章,我尝试将其拆分成小写字符后紧跟大写的地方
使用我尝试过的正则表达式:
tsc
但只能在每个单词上分开
答案 0 :(得分:1)
由于您的JS环境符合ECMAScript 2018(请参见what regex features it supports),因此您可以使用lookbehinds:
.split(/(?<=[a-z])(?=[A-Z])/)
(?<=[a-z])
模式是一种向后搜索,需要在当前位置的左侧紧跟一个数字,(?=[A-Z])
是一个正向搜索,需要在当前位置的右侧紧靠一个数字。
请参见regex demo。
答案 1 :(得分: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 != ''));
答案 2 :(得分:0)
“如果小写字母后跟大写字母,则需要
.split(/(?<=[a-z])(?=[A-Z])/),
,但仅适用于符合ECMAScript 2018的Chrome和Node.JS。”
–威克多·斯特里比耶(