忘れてしまいそうなので、メモっときます。
##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
で一致するのがあっても、最後まで検索&置換を続ける
という感じ。
これで、**|
か|
で始まって、文字《文字》**という正規表現ができる。