
Best syntax for a regex literal - vonox
I am working on a programming language.<p>What is the best syntax for regular expression literal?<p>`(...)<p>re (...)<p>$(...)<p>@(...)<p>&lt;...&gt;<p>&#x2F;...&#x2F;<p>(re:...)<p>`...`
======
zenithcobra
"^[AEIOU]{1}.+[aeiou]{1}$" or `(^[AEIOU]{1}.+[aeiou]{1}$) or re
(^[AEIOU]{1}.+[aeiou]{1}$) or @(^[AEIOU]{1}.+[aeiou]{1}$) or
<^[AEIOU]{1}.+[aeiou]{1}$> or /^[AEIOU]{1}.+[aeiou]{1}$/ or
(re:^[AEIOU]{1}.+[aeiou]{1}$) or `^[AEIOU]{1}.+[aeiou]{1}$`

all look ugly. I would either use a triple distinct character set like python
with """^[AEIOU]{1}.+[aeiou]{1}$""" or ~~~^[AEIOU]{1}.+[aeiou]{1}$~~~ but for
simplicity you should use the re(...) one because you can intuitively know
where the wrapper starts and ends.

~~~
vonox
Thanks

~~~
vonox
I also use an alternative regex syntax to improve readability. For example:

re ("abc" | ["0"-"9"]+)

means this:

/abc|[0-9]+/

(You can put whitespaceses into the literal)

~~~
ktpsns
PCRE have the /x modifier to allow whitespace _and_ comments.

When reinventing the wheel, it's hard to top what other do already pretty
well. Also, be warned people have to learn your syntax and this will probably
stop them using it.

