次のような特殊文字の文字列コンテンツを検出したい:ADD[ID,x,y];
この場合は次[のとおりです。]
それは不可能ですか?
部分をキャプチャしたい場合はID,x,y、それが可能であることを確認してください。
var str = "ADD[ID,x,y];";
var match = /\[([^\]]+)\]/.exec(str);
if (match) {
console.log(match[1]); // "ID,x,y"
}
表現は実にシンプルですが、複雑に見えます。そう:
/.../正規表現リテラルです。\[リテラル[文字です ([正規表現では特殊なので、エスケープする必要があります)。(....)キャプチャ グループです。これを使用して、括弧内のテキストをキャプチャします。[^\]]ではないもの」を意味する文字クラス]です。]そうしないと、文字クラスが終了するため、内部でエスケープする必要があります。+とは「一つ以上の前のもの」という意味です。\]は文字どおりの終了]文字です。