Měření zájmu o vylepšené metody JavaScript Regex

Aktualizace: Některé ze zde diskutovaných funkcí se dostaly do pozdějších verzí XRegExp .

Takže přiznávám, že XRegExp 0.1, i když doufejme, že je pro některé lidi zajímavý nebo užitečný, byl oproti mým původním plánům zmenšen. Byly pro to dva důvody:

  1. Abyste to dostali ze dveří.
  2. Kromě několika okrajově užitečných konstrukcí syntaxe jsem již zahrnul všechny standardní funkce regulárních výrazů, které jsem mohl vymyslet způsoby, jak je napodobit, a přitom umožnit použití vytvořených objektů regulárního výrazu s vestavěnými metodami regulárního výrazu JavaScript bez jakékoli změny očekávaného chování (např. řazení zpětných referencí).

Pokud se však nebudu starat o použití regexů s vestavěnými metodami a místo toho vytvořím vlastní metody (možná s názvy jako xmatch , xreplace , xexec atd.), je technicky možné napodobit řadu významných doplňkových funkcí. Věci jako atomové skupiny, přivlastňovací kvantifikátory, pojmenované zachycení a dokonce i nekonečně dlouhé lookbehindy (ačkoli lookbehindy by musely být omezeny na zobrazení na začátku a/nebo konci regulárních výrazů, případně by se neměly používat společně s náhledy).

Nicméně, protože některé z těchto věcí může být obtížné vytáhnout a nejsem si jistý, jak užitečné by to pro většinu lidí považovalo za užitečné, nebo zda většina lidí dává přednost regulárním literálům před konstruktorem, a to i s ohledem na vylepšení funkcí, která jsou možná prostřednictvím vlastního konstruktore, rád bych změřil zájem o tyto věci, než o tom budu přemýšlet. Myslíte si, že byste pravidelně používali funkce, které jsem zmínil, i když by to vyžadovalo použití vlastního konstruktoru a metod? Používáte regulární výrazy v JavaScriptu, ale nevidíte, že byste zahrnuli skript jen proto, abyste to mohli dělat? Myslíte si, že pohodlí literálů regulárních výrazů převažuje nad výhodami vylepšené syntaxe? Dej mi vědět. Pokud byste chtěli další podrobnosti, chtěli byste s tím pomoci nebo máte nějaké další připomínky, budu rád, když se mi ozvete.