manifold use \\ instead \ so has it own syntax
No, that is incorrect. Regular expression syntax in Manifold is the usual syntax.
The \\ appears because of SQL syntax, not regular expression syntax.
The regular expression string is being passed as an argument to the StringRegexpReplace SQL function that is being used within an SQL statement (the UPDATE statement). Any characters that have special meaning to SQL must be escaped, so the text string you pass to the function is preserved literally and not parsed as a special SQL command.
A backslash \ character has special meaning in SQL because it itself is the escape character. It means to take the next character literally and not as a control character. So if you just wrote
that is a command to the SQL parser to use the literal text
That's not what you want, as you want the \ characters to stay in there, themselves treated as literal text and not interpreted as SQL controls. The convention in Manifold (as I think is the pretty much universal convention in other packages) is that if you want the escape character to be taken literally, you repeat it: \\ means to take the backslash character as a literal character, not as a control character meaning "escape the next character."
Therefore, when the SQL parser sees
in a string, it knows that you want it to use the literal text
See the "Literals" section in the Queriestopic.
Note that escape characters and how to escape characters with special meaning vary widely among SQL systems, since these are extensions to the SQL standard. Oracle uses a single quote ' character as an escape character within running text, which is highly confusing because a single quote ' character is also used to mark the beginning and end of a string. (!)
SQL Server is also weird, allowing you to specify an escape character of your choosing, but for use in LIKE statement.
PostgreSQL/PostGIS is especially weird, using E in front of strings, but within strings using \\ to escape \ sequences for special characters.
Manifold's use of \ as a universal escape character in all settings with no need for ESCAPE or other declarations is very simple, hard to get wrong, and totally in sync with centuries of C and C++ practice that every literate person since Plato has known and loved. (OK... maybe not every literate person...)
By the way, congratulations to Sloots for a truly insightful contribution. This is one of the smartest things I've seen in a long time, really beautiful for the combination of power, speed, and brevity.