Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Regex don’t do transformations? All they can do is match strings.


If I have a list of names I’d like to reverse:

John Smith > Smith, John Anna Peterson > Peterson, Anna

I can write:

(.) (.)

And replace with:

\2, \1

Not sure if that’s part of some “official” regex spec but it works more or less everywhere.

(Of course if it was an actual list of names I’d have to be a lot more intelligent with double names etc.)


Almost. All regular expressions do is match strings and find the starts and ends of whole matches and match groups. And this is an important distinction since match group support adds quite a bit of complexity to the theory behind regular expressions and also increases their usefulness by quite a bit.

Regular expression libraries then often can use these boundaries, for the whole match and for groups, for transform the string (e.g. replacing what was matched by a group with some other content).


Regex grouping expressions along with find & replace enable transformations.


Transformation by substitution is part of most dialects of regex, in the form of capturing groups.




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: