web関連
【js】特定のテキスト内の全角文字を囲む方法
全角文字のみclass付きのspanタグで囲んで、CSSで調整したかった時の備忘録
正規表現で全角文字をヒットさせてspanタグで囲む方法
すべてのpタグ内で全角文字があったらspanタグで囲む
$('p').each(function(){
const elem = $(this);
const elemTxt = elem.html();// 対象の文字列を取得
const replaceTxt = elemTxt.replace(/([^\x00-\x7E]+)/g,'<span class="-text--zenkaku">$1</span>');
elem.html(replaceTxt);// 差し替え
});
メモ1:正規表現を()で囲む
全角文字の正規表現/[^\x00-\x7E]+/g
を/([^\x00-\x7E]+)/
と()
で囲むと$1
と記述するだけで正規表現でヒットした部分、マッチした全角文字を取得できるみたい
/(\w+)\s(\w+)/
というように()
が複数あったら$1
、$2
で取得できる
メモ2:or表現の書き方
/([^\x00-\x7E]+|aaa)/g
これで全角文字とaaa
にマッチしたものも$1
で取得できる