Last Update 2009/03/29
TOP - JavaScript - String - replace()
指定した正規表現(文字列)とマッチした部分の文字列の置換を行います。
戻り値1 = 名前1 .replace( 値1 , 値2 )
戻り値1
文字列の置換を行った結果となる文字列
名前1
Stringオブジェクトの名前
値1
置換する対象となる文字列、もしくはマッチを置換部分検索のためにマッチを試みる正規表現
値2
値1を置き換える文字列
値1が正規表現であり、値2に下記に該当する$を伴う文字があった場合は、続く置換ルールが適用されます。
$$
$
$&
値1でマッチした文字列
$`
値1でマッチした部分文字列より前に位置する文字列
$'
値1でマッチした部分文字列より後ろに位置する文字列
$1 〜 $9
1〜9をnとした場合の、n個目のマッチ結果。この場合のマッチとは( )によるまとまりのマッチを表す
もしnが( )の数以下でn個目ががマッチしていないときは空文字で置換される
もしnが( )の数以下でn個目ががマッチしていないときは空文字で置換される
$01 〜 $99
01〜99をnnとした場合の、nn個目のマッチ結果。この場合のマッチとは( )によるまとまりのマッチを表す
もしnnが( )の数以下でnn個目ががマッチしていないときは空文字で置換される
もしnnが( )の数以下でnn個目ががマッチしていないときは空文字で置換される
(例)
<SCRIPT type="text/javascript">
<!--
function btnclick()
{
var s = "";
var s1 = new String("abc123");
var s2 = new String("abc123");
var s3 = new String("abc123");
var s4 = new String("a1b2c3");
var s5 = new String("aaabbb");
s += s1.replace("abc", "def") + "\n"; // 文字列を検索して置換
s += s2.replace(/c\d/, "d4") + "\n"; // 正規表現でマッチした結果を置換
s += s3.replace(/(\w)(\d)/, "$2$1") + "\n"; // [$n]を( )ごとのマッチに関して置換
s += s3.replace(/(\w\d)(\w\d)/, "$2$1") + "\n"; // [$n]に2つ目の( )がマッチしないため、
// 空文字列で置換
s += s3.replace(/(\w)(\d)/, "$02$01") + "\n"; // [$nn]を( )ごとのマッチに関して置換
s += s3.replace(/(\w\d)(\w\d)/, "$02$01") + "\n"; // [$nn]に2つ目の( )がマッチしないため、
// 空文字列で置換
s += s4.replace(/\w\d/g, "0") + "\n"; // グローバル指定あり
s += s5.replace(/aaa/, "$'") + "\n"; // 正規表現でマッチした以降の文字列で置換
alert(s);
}
//-->
</SCRIPT>