Сообщение от рони
|
плохо представляю что вам нужно.
|
Сообщение от рони
|
чтобы это значило? подожду решения.
|
Смотрите, например код...
"aaabbbcc".match(/bb(b).(c)/)
возвращает...
Код:
|
{
"0": "bbbcc",
"1": "b",
"2": "c",
groups: undefined,
index: 3,
input: "aaabbbcc",
length: 3,
__proto__: Array.prototype
} |
а автору нужно, чтобы это было так... Чтобы...
"aaabbbcc".match(/bb(b).(c)/)
возвращал...
Код:
|
{
"0": "bbbcc",
"1": { valueOf() { return "b" }, index: 5 },
"2": { valueOf() { return "c" }, index: 7 },
groups: undefined,
index: 3,
input: "aaabbbcc",
length: 3,
__proto__: Array.prototype
} |
Тогда можно будет сказать, где в исходном тексте находится найденная группа
Так что,
рони, ваш код из поста №24 работает неправильно... Вот с такими данными видно...
let str = "aaaa";
function r(v,s) {
return v.replace(s, function(...f) {
return f.slice(1,-2).reduce((str, reg, i) => str.replace(reg, `<span class=P${++i}>$&</span>`), f[0])
});
}
str = r(str, /aa(a)a/g);
alert(str);