Re: text replace using regex in edit textarea
Petko Yotov <[email protected]> Fri, 23 Jan 2026 18:36:59 +0100
| Newsgroups | gmane.comp.web.wiki.pmwiki.user |
|---|---|
| Message-ID | <[email protected]> |
SSB3b3VsZCByZXVzZSB0aGUgY29yZSBKYXZhU2NyaXB0IEdVSUVkaXQgZnVuY3Rpb25zIGFuZCB0 aGUgUG1MaWIgCmhlbHBlcnMgYXZhaWxhYmxlIHNpbmNlIFBtV2lraSAyLjQuMCAobGF0ZXN0IHJl Y29tbWVuZGVkKS4KCkNyZWF0ZSBhIGZpbGUsIHNheSBwdWIvbXlyeHJlcGxhY2UuanMsIGFuZCBw dXQgaW4gaXQgc29tZXRoaW5nIGxpa2UgCnRoaXM6CgogICBQbUxpYi5yZWFkeShmdW5jdGlvbigp ewogICAgIGNvbnN0IHsgZHFzLCBkY2UsIGFkamJlLCB0YXAgfSA9IFBtTGliOyAvLyBpbXBvcnQg aGVscGVycwoKICAgICBjb25zdCBjb250YWluZXIgPSBkcXMoJ3NwYW4uR1VJQnV0dG9ucycpOwog ICAgIGlmKCFjb250YWluZXIpIHJldHVybjsKICAgICBjb25zdCBidXR0b24gPSBkY2UoJ2lucHV0 Jywge3R5cGU6J2J1dHRvbicsIHZhbHVlOidSWFInfSk7CiAgICAgYWRqYmUoY29udGFpbmVyLCBi dXR0b24pOyAvLyBhZGQgYmVmb3JlIHRoZSBlbmQgb2YgR1VJQnV0dG9ucwoKICAgICBmdW5jdGlv biByZXBsYWNlX2luX3NlbGVjdGlvbihzZWxlY3Rpb24pIHsKICAgICAgIGlmKHNlbGVjdGlvbj09 PScnKSByZXR1cm4gJyc7CiAgICAgICBsZXQgcmVzdWx0ID0gc2VsZWN0aW9uCiAgICAgICAgIC5y ZXBsYWNlKC9cclxuPy9nLCAiXG4iKSAvLyBub3JtYWxpemUgbGluZSBicmVha3MKICAgICAgICAg LnJlcGxhY2UoLyAqKFxuICopKy9nLCAnICcpICAgIC8vIGpvaW4gbGluZXMKICAgICAgICAgLnJl cGxhY2UoL3Btd2lraS9pZywgJ1BtV2lraScpIC8vIGZpeCBjYXBpdGFsaXphdGlvbgogICAgICAg ICAvLyBhZGQgeW91ciBvd24KICAgICAgIDsKICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQoK ICAgICB0YXAoYnV0dG9uLCBmdW5jdGlvbigpeyAvLyBvbmNsaWNrCiAgICAgICBpbnNNYXJrdXAo cmVwbGFjZV9pbl9zZWxlY3Rpb24pOwogICAgIH0pOwogICB9KTsKCkVuYWJsZSB0aGlzIHNjcmlw dCBpbiBsb2NhbC9jb25maWcucGhwLCBhc3N1bWVzICRFbmFibGVHVUlCdXR0b25zIGlzIAplbmFi bGVkOgoKICAgaWYoJGFjdGlvbj09J2VkaXQnKSAkSFRNTEhlYWRlckZtdFsnbXlyeHJlcGxhY2Un XQogICAgICA9ICc8c2NyaXB0IHNyYz0iJFB1YkRpclVybC9teXJ4cmVwbGFjZS5qcyI+PC9zY3Jp cHQ+JzsKClRoZSAiY29uc3QgYnV0dG9uLi4uIiBwYXJ0IGlzIHRoZSBidXR0b24gYWRkZWQgdG8g dGhlIGVuZCBvZiB0aGUgR1VJIApidXR0b25zIGNvbnRhaW5lci4gVGhlIHZhbHVlICdSWFInIGlz IHRoZSBidXR0b24gbGFiZWwsIG9idmlvdXNseSB5b3UgCmNhbiBjaGFuZ2UgaXQsIG9yIGV2ZW4g dXNlIGFuIGVtb2ppLgoKU2VsZWN0IHNvbWUgdGV4dCBpbiB0aGUgZWRpdCB0ZXh0YXJlYSBhbmQg Y2xpY2sgb24gdGhlIGJ1dHRvbi4gVGhpcyB3aWxsIApjYXVzZSB0aGUgZnVuY3Rpb24gcmVwbGFj ZV9pbl9zZWxlY3Rpb24oKSB0byBiZSBjYWxsZWQgd2l0aCBhcmd1bWVudCB0aGUgCmN1cnJlbnQg c2VsZWN0aW9uIHRleHQuIEl0IHNob3VsZCBtYWtlIHRoZSByZXBsYWNlbWVudHMgYW5kIGNoYW5n ZXMsIAp0aGVuIHJldHVybiB0aGUgcmVzdWx0IHdoaWNoIHdpbGwgYmUgaW5zZXJ0ZWQgaW4gcGxh Y2Ugb2YgdGhlIHNlbGVjdGlvbiAKaW4gdGhlIGVkaXQgdGV4dGFyZWEuCgpJIHdvdWxkIGFsc28g ZW5hYmxlICRFbmFibGVQcmV2aWV3Q2hhbmdlcyA9IDE7IGFuZCBwcmVzcyAiUHJldmlldyIgdG8g CnNlZSBteSBjaGFuZ2VzIGJlZm9yZSBzYXZpbmcgdGhlIHBhZ2UuCgpVc2luZyB0aGUgYnVpbHQt aW4gaGVscGVyIGZ1bmN0aW9ucyBpcyBtdWNoIHNpbXBsZXIgYW5kIGVhc2llciB0aGFuIApkb2lu ZyBpdCBpbiBwbGFpbiBKYXZhU2NyaXB0LCB5b3UgZG9uJ3QgbmVlZCB0byBsb2NhdGUgdGhlIHRl eHRhcmVhLCAKZGV0ZWN0IHRoZSBzZWxlY3Rpb24sIGhhbmRsZSB1bmRvL3JlZG8sIHN5bmMgd2l0 aCBQbVN5bnRheCwgZXZlcnl0aGluZyAKd29ya3MgdW5kZXIgdGhlIGhvb2QuCgpQZXRrbwoKLS0g CklmIHlvdSB1cGdyYWRlIDogIGh0dHBzOi8vd3d3LnBtd2lraS5vcmcvVXBncmFkZXMKCk9uIDIz LzAxLzIwMjYgMTc6MDcsIEhhbnMgQnJhY2tlciB3cm90ZToKPiBIaSBQZXRrbywgSSBhbSB3b25k ZXJpbmcgaWYgdGhlcmUgaXMgYSB3YXkgdG8gYWRkIGEgY3VzdG9tIGd1aWJ1dHRvbgo+IGFuZC9v ciBrZXlib2FyZCBzaG9ydGN1dCB0byBkbyBhIGN1c3RvbSB0ZXh0IHJlcGxhY2Ugb24gYSB0ZXh0 Cj4gc2VsZWN0aW9uIGluIHRoZSBzdGFuZGFyZCBlZGl0IHRleHRhcmVhPwo+IAo+IEkgd291bGQg bGlrZSB0byBzZWxlY3Qgc29tZSB0ZXh0IGluIHRoZSBlZGl0IHRleHRhcmVhLCBsaWtlIGEKPiBw YXJhZ3JhcGgsIG9yIG1vcmUsIGZyb20gYSBsb25nZXIgcGFnZSB0ZXh0LCBhbmQgdGhlbiB2aWHC oCBhIGJ1dHRvbgo+IGNsaWNrIG9yIGEga2V5Ym9hcmQgc2hvcnRjdXQgaGF2ZSBhIHJlZ3VsYXIg ZXhwcmVzc2lvbiByZXBsYWNlIGRvbmUgb24KPiB0aGlzIHRleHQuIEluIHBhcnRpY3VsYXIgSSBs aWtlIHRvIHN0cmlwIG91dCBuZXdsaW5lIFxuIGFuZCByZXBsYWNlCj4gd2l0aCBzaW1wbGUgc3Bh Y2UsIHRvIHVuZG8gZm9ybWF0dGluZyBmcm9tIGluc2VydGVkIHBkZiB0ZXh0LiBJIGNhbiBkbwo+ IHRoaXMgaW4gbXkgY29kZSBlZGl0b3IsIGJ1dCBjb3B5aW5nIGFuZCBwYXN0aW5nIHBhcmFncmFw aHMgYmFjayBhbmQKPiBmb3J3YXJkIGlzIGEgaGFzc2xlLiBJZGVhbGx5IEkgbGlrZSB0byBjaG9v c2UgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbiwKPiBvciBzZXQgdXAgZGlmZmVyZW50IGN1c3RvbSAi cmVnZXggdGV4dCByZXBsYWNlIiBidXR0b25zLgo+IAo+IEkgZG9uJ3Qga25vdyBpZiBpIG5lZWQg dG8gaGFjayB0aGUgZ3VpZWRpdCBqYXZhc2NyaXB0LCBvciBob3cgdG8gYWRkCj4gdGhlIGZ1bmN0 aW9uYWxpdHkgaW4gamF2YXNjcmlwdC4gU29tZSBhZHZpY2Ugd291bGQgYmUgZ3JlYXRseQo+IGFw cHJlY2lhdGVkIQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KcG13aWtpLXVzZXJzIG1haWxpbmcgbGlzdApwbXdpa2ktdXNlcnNAcG1pY2hhdWQuY29tCmh0 dHA6Ly93d3cucG1pY2hhdWQuY29tL21haWxtYW4vbGlzdGluZm8vcG13aWtpLXVzZXJzCg==