gpt4 book ai didi

javascript - 我正在尝试制作 RLE 代码但没有成功

转载 作者:行者123 更新时间:2023-11-30 09:14:48 25 4
gpt4 key购买 nike

我正在尝试实现“运行长度编码”的功能,但我卡在了中间。

例如,我有字符串:"RRRTTTFBB",我试图将其分离为这种数组:["RRR", "TTT", "F", "BB"].

我只设法像这样将项目放入数组的 1 个键中:["RR""R""TT""T"....]

我试过用 while 循环、for 循环、if/else、switch 来做到这一点,但我不知道我做错了什么。

function rleFunc(str) {
let newArr = [];
const strTrim = str.trim();
const strUp = strTrim.toUpperCase();
const arr = strUp.split("");
const arrLength = arr.length;
// Anyone has idea what to put here?? I'm lost
return newArr;
}

最佳答案

另一种方法是使用带有 .match 的正则表达式来获得您想要的结果:

const str = "RRRTTTFBB";
console.log(str.match(/(.)\1*/g));

这是由于表达式:

  • (.):表示对任意字符进行分组
  • \1*:表示使用先前分组的字符并匹配零次以上的出现
  • /g:表示对整个字符串重复这个模式(不仅仅是第一次出现)

关于javascript - 我正在尝试制作 RLE 代码但没有成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55829121/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com