問題タブ [quotemeta]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - Perl の \Q ... \E または quotemeta() に相当する Javascript
Perl の正規表現では、メタ文字が含まれている場合でも、その部分式をリテラル文字列として一致させることを示すために、部分式を\Q
andで囲むことができます。\E
またquotemeta
、文字列に正確に正しい数のバックスラッシュを挿入する関数もあるため、後でその文字列を正規表現に補間すると、その内容に関係なく文字どおりに一致します。
Javascript (主要なブラウザーに展開されている)には同等の機能が組み込まれていますか? 私は自分で問題なく書くことができますが、気にする必要がないかどうか知りたいです。
regex - "quotemeta" \Q ... \E を Tcl に実装していますか?
典型的なユースケースは、正規表現にユーザー入力を含める必要がある場合です。正規表現で特別な意味を持つ文字 (つまり、Perl の「ダーティ ダース」) はエスケープする必要があります。Perl はこれを行うための "quotemeta" 機能を提供します: 内挿変数を と にカプセル化するだけ\Q
です\E
。しかし、Tcl にはそのような機能はありません (このページによると、ARE を使用しても)。
Tcl に quotemeta の適切な (厳密な) 実装はありますか?
regex - quotemeta が有効になっている文字列が特定の正規表現と一致しない
quotemeta が有効になっている次の文字列の場合、if ステートメントは .cpp および .o ファイル名と一致できません。私はここで何か間違ったことをしていますか?