1
1

More than 3 years have passed since last update.

【メモ】JavaScriptのreplaceメソッドと正規表現について

Last updated at Posted at 2021-01-09

忘れてしまいそうなので、メモっときます。

replaceメソッドの使い方

replace('検索文字','置換した後の文字')という感じ。

そして、$1とか$2とかは、検索文字の()の中身のこと。

var str = '今日は2019年6月16日、明日は2019年6月17日です。';
var result1 = str.replace( /(\d+)年(\d+)月(\d+)日/g , "$1/$2/$3" );

// 結果
今日は2019/6/16、明日は2019/6/17です。

みたいな感じになる。

正規表現

今回謎だったのが、下記の正規表現。

replace(/[\||](.+?)《(.+?)》/g, '<ruby>$1<rt>$2</rt></ruby>')

無知すぎて、この程度もわかりませんでした・・・

でも今らなわかる!!!

/パターン/フラグという正規表現の記述方法。
[\||]|に一致するものという意味。
\(バックスラッシュ)はエスケープするためのもの。
[]は角括弧に含まれるいずれか1文字にマッチする。
.+?は一文字以上の文字と一致する。
/gで一致するのがあっても、最後まで検索&置換を続ける

という感じ。

これで、|で始まって、文字《文字》という正規表現ができる。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1