@[email protected] to Programmer [email protected] • 8 days agowhat debugging regex feels likelemmy.mlmessage-square73fedilinkarrow-up1893
arrow-up1893imagewhat debugging regex feels likelemmy.ml@[email protected] to Programmer [email protected] • 8 days agomessage-square73fedilink
minus-square@lmmarsanolinkEnglish2•edit-27 days agoElisp has a nice notation for maintainably composing regexes like any other programming expression. Only language I’ve seen offer that. So instead of "/\\*\\(?:[^*]\\|\\*[^/]\\)*\\*+/", the regular expression to match C block comments could be expressed (with inline comments) (rx "/*" ; Initial /* (zero-or-more (or (not (any "*")) ; Either non-*, (seq "*" ; or * followed by (not (any "/"))))) ; non-/ (one-or-more "*") ; At least one star, "/") ; and the final /
Elisp has a nice notation for maintainably composing regexes like any other programming expression. Only language I’ve seen offer that. So instead of
"/\\*\\(?:[^*]\\|\\*[^/]\\)*\\*+/"
, the regular expression to match C block comments could be expressed (with inline comments)(rx "/*" ; Initial /* (zero-or-more (or (not (any "*")) ; Either non-*, (seq "*" ; or * followed by (not (any "/"))))) ; non-/ (one-or-more "*") ; At least one star, "/") ; and the final /