如何创建具有以下结果的正则表达式:
输入:apple
输出:a,ap,app,appl,apple
我得到了这个“[^”] +“|([^]] +)| [^”\ s()] +但它似乎不起作用。我正在尝试输出一个文本数组,我需要使用正则表达式。
答案 0 :(得分:0)
两个简单的嵌套循环应该足够,代码结构在所有语言中应该或多或少相似:
str=`apple`;
for(var i=0;i<str.length;i++)
{
tmp="";
for(var j=0;j<=i;j++)
tmp+=str[j];
console.log(tmp);
}
如果您必须使用正则表达式来解决它,这有点奇怪,但这可以在正则表达式的帮助下完成:
str=`apple`;
finalStr=str.split("").reverse().join("");
var result=[];
const regex = /.(?=(.*))/g;
let m;
while ((m = regex.exec(finalStr))!== null)
result.push((m[0]+m[1]).split("").reverse().join(""));
result=result.reverse();
console.log(result);