Regular Expressions
Match opnieuw instellen: \ K
Zoeken…
Opmerkingen
Regex101 definieert \ K-functionaliteit als:
\K
reset het startpunt van de gerapporteerde wedstrijd. Eerder gebruikte tekens worden niet langer opgenomen in de laatste wedstrijd
De escape-reeks \K
wordt ondersteund door verschillende engines, talen of tools, zoals:
- boost (sinds ???)
- grep -P ← gebruikt PCRE
- Oniguruma ( sinds 5.13.3)
- PCRE ( sinds 7.2 )
- Perl ( sinds 5.10.0 )
- PHP ( sinds 5.2.4 )
- Ruby (sinds 2.0.0)
... en (tot nu toe) niet ondersteund door:
Zoek en vervang met de operator \ K
Gezien de tekst:
foo: bar
Ik wil alles na "foo:" vervangen door "baz", maar ik wil "foo:" behouden. Dit kan worden gedaan met een groep als deze:
s/(foo: ).*/$1baz/
Wat resulteert in de tekst:
foo: baz
of we kunnen \K
, dat alles "vergeet" wat het eerder heeft gevonden, met een patroon als dit:
s/foo: \K.*/baz/
De regex komt overeen met "foo:" en ontmoet vervolgens de \K
, de eerder overeenkomende tekens worden als vanzelfsprekend beschouwd en achtergelaten door de regex, wat betekent dat alleen de tekenreeks met .*
Wordt vervangen door "baz", wat resulteert in de tekst:
foo: baz