正規表現のメタ文字をエスケープ

正規表現のメタ文字をエスケープを行うには、次のように実装します。

関数定義

JavaScript

/**
 * 正規表現のメタ文字をエスケープ
 * @param {string} str エスケープさせたい文字列
 * @return {string} エスケープされた文字列を返す
 */
var regExpEscape = function(str) {
	return str.replace(/[-\/\\^$*+?.()|\[\]{}]/g, '\\$&');
};

使い方

引数名 説明
第一引数
必須
str string エスケープさせたい文字列

戻り値

エスケープされた文字列を返します。

サンプルコード

JavaScript

var result = regExpEscape(location.href);

alert(result);

JavaScript逆引きリファレンス一覧へ戻る