regex_Escape

文字列内の正規表現内で意味を持つ文字をエスケープします。


taiseiue | 2025-02-13

定義

名前空間: Alice.Regex
アセンブリ: Losetta.Runtime.dll
ソースコード: Alice.Regex.cs

regex_Escape(string)

文字列内の正規表現内で意味を持つ文字をエスケープします。

AliceScript
namespace Alice.Regex;
public string regex_Escape(string str);
引数
str エスケープしたい文字列
戻り値
string strをエスケープした文字列

対応
AliceScript RC1、RC2、GM、2.0、2.1、2.2、2.3、3.0、4
AliceSister GM、2.0、2.1、2.2、2.3、3.0、4
Losetta 0.8、0.9、0.10、0.11

説明

この関数は文字列を変換して、正規表現内のメタ文字を文字リテラルとして使用できるようにエスケープします。 正規表現をコード中で直接記述する場合でも、バックスラッシュ\を使用してエスケープするのではなく、この関数を呼び出してエスケープすることをおすすめします。

AliceScriptの実装によっては、この関数は左かっこ(と左波かっこ{をエスケープしますが、それと対応する右かっこはエスケープしないことがあります。これは、多くの正規表現エンジンが左かっこと対応しない右かっこをリテラルとして解釈するからです。

次の例では、(.*)をエスケープしています。

AliceScript
using Alice.Regex;

string str = regex_escape("(.*)");
print(str);
//出力: \(\.\*\)