Ich komponiere einen komplexen regulären Ausdruck und der Benutzer kann einen Teil des Ausdrucks angeben. Der vom Benutzer bereitgestellte Teil sollte jedoch wörtlich interpretiert werden, dh Regexp-Sonderzeichen sollten maskiert werden. Gibt es eine Funktion, um diesen Zeichen zu entkommen? Es scheint eine übliche Sache zu sein, aber mein Googeln war erfolglos.
Beispiel:
(re-search-forward (format "\b%s\b" user-string))
Wenn user-string
ja test*case
, möchte ich test*case
aber nicht übereinstimmen testttttcase
.
quelle
(defalias 'regexp-escape 'regexp-quote)
. Wurde dies auf einer der Emacs-Mailinglisten besprochen?