const originalString = " с 14:01 к 15:00 работать по плановому";
const appendText = " (время местное)";
const timeRegex = /\b\d{1,2}:\d{2}\b/g;
const matches = originalString.match(timeRegex);
if (matches) {
const lastTime = matches[matches.length - 1];
const updatedString = originalString.replace(new RegExp(`\\b${ lastTime }\\b`), lastTime + appendText);
console.log(updatedString);
return updatedString
} else {
console.log("No time found");
return originalString
} const addTimeDescription = (str) =>
str.replace(/\b\d{1,2}:\d{2}\b(?!.*?\b\d{1,2}:\d{2}\b)/, '$& (время местное)');
// пример использования
const originalString = " с 14:01 к 15:00 работать по плановому";
const updatedString = addTimeDescription(originalString); // ' с 14:01 к 15:00 (время местное) работать по плановому'/^.*\b\d\d?:\d\d\b/
- .replace(new RegExp(`\\b${ lastTime }\\b`)
+ .replaceAll(new RegExp(`\\b${ lastTime }\\b`, `g`)
const regStr = '\\b\\d{1,2}:\\d{2}\\b';
const appendStr = ' (время местное)';str.replace(RegExp(`(?<=${regStr})(?!.*${regStr})`), appendStr)
// или
str
.split(RegExp(`(${regStr})`))
.map((n, i, a) => i + 2 === a.length ? n + appendStr : n)
.join('') ...
if (matches) {
const updatedString = originalString.split(lastTime).toSpliced(-1,0,appendText).join(lastTime);
...