JS ParseTags Recursive solution
Здравейте Колеги,
Искам да реша, но без успех, задачата за намиране и изтриване на тагове в стринг с рекурсия. В случая таговете са <orgcase> и </orgcase>, но това няма значение. Ето кода:
const input = `We are <orgcase>liViNg</orgcase> in a <upcase>yellow submarine</upcase>.
We <orgcase>doN\'t</orgcase> have <lowcase>anything</lowcase> else`;
let output = '';
String.prototype.removeOrgCase = function() {
const inQuote = '<orgcase>',
outQuote = '</orgcase>';
let indexIn = 0,
indexOut = 0;
indexIn = this.indexOf(inQuote);
indexOut = this.indexOf(outQuote, indexIn);
if (indexIn > 0) {
(this.substring(0, indexIn) + this.substring(indexIn + inQuote.length, indexOut) +
this.substring(indexOut + outQuote.length)).removeOrgCase();
}
//recursion bottom
else if (indexIn === -1) {
return output + this;
}
}
input.removeOrgCase();
console.log(output);
Аз доста се помъчих, но до тук ми стигнаха знанията.