スポンサーサイト





上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

タグ :

   印刷ボタン       この記事に拍手する       このエントリーをはてなブックマークに追加

Return to page top

  • Comments (Close): -
  • TrackBack (Close): -

replace()メソッド (1)

  • Posted by: javascriptmania
  • 2011-04-09 Sat 07:50:44
  • 正規表現




replace()メソッドの基本



replace()メソッドは、正規表現によって文字列の置換を行います。

検索対象 . replace (置換前文字列 , 置換後文字列)



「さくら銀行」を「かえで銀行」に置換してみましょう。

<html>

<head>

<script type="text/javascript">
<!--

var text = "さくら銀行";
replaceText = text.replace(/さくら銀行/,"かえで銀行");
alert(replaceText);

// -->
</script>

</head>

<body>

</body>

</html>


match()メソッドと同様に、置換前文字列の
  /さくら銀行/
は、
  "さくら銀行"
としてもエラーにはなりません。


フラグ g



replace()メソッドの基本は以上ですが、このままではうまくいかないこともあります。

たとえば検索対象に「さくら銀行」が複数ある場合です。

<html>

<head>

<script type="text/javascript">
<!--

var text = "1 さくら銀行  2 さくら銀行";
replaceText = text.replace(/さくら銀行/,"かえで銀行");
alert(replaceText);

// -->
</script>

</head>

<body>

</body>

</html>


実行結果
20110409_1

一つしか置換できません。

こういうときは、検索条件を指定する修飾子(フラグ)である g をつけます。gをつけると、マッチするものをすべて見つけます。

var text = "1 さくら銀行  2 さくら銀行";
replaceText = text.replace(/さくら銀行/g,"かえで銀行");
alert(replaceText);


実行結果
20110409_2


フラグ i



アルファベットには大文字、小文字があり、これらが入り混じったものを置換しなければならない場合もあります。

<html>

<head>

<script type="text/javascript">
<!--

var text = "SAKURA BANK";
replaceText = text.replace(/Sakura Bank/,"Kaede Bank");
alert(replaceText);

// -->
</script>

</head>

<body>


</body>

</html>


実行結果
20110409_4

replace()メソッドがうまく働きません。これは「Sakura Bank」と「SAKURA BANK」は別物と認識されるからです。

大文字と小文字を区別しないようにするには、フラグ i をつけます。

var text = "SAKURA BANK";
replaceText = text.replace(/Sakura Bank/i,"Kaede Bank");
alert(replaceText);


実行結果
20110409_5


iとgを組み合わせる



さらに、「Sakura Bank」「SAKURA BANK」「sakura bank」のように、大文字小文字が組み合わさった文字列が複数あるときにこれをすべて検索して置換するには、フラグを ig とします。

<html>

<head>

<script type="text/javascript">
<!--

var text = "1 Sakura Bank  2 SAKURA BANK  3 sakura bank";
replaceText = text.replace(/Sakura Bank/ig,"Kaede Bank");
alert(replaceText);

// -->
</script>

</head>

<body>


</body>

</html>


実行結果
20110409_6









関連記事

タグ :

   印刷ボタン       この記事に拍手する       このエントリーをはてなブックマークに追加

Return to page top

Comments:

Comment Form
Only inform the site author.

Trackback+Pingback:

TrackBack URL for this entry
http://javascriptmania.blog111.fc2.com/tb.php/10-d4466e73
  • 閉じるボタン
月別アーカイブ
リンク
カテゴリ
RSSリンクの表示
QRコード
QR
最新コメント
最新トラックバック
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。