[JavaScript] 数字のみ抽出

JavaScriptで文字列から数字のみを抽出(他の文字を削除)する処理です。
正規表現を利用します。

tmp = tmp.replace(/[^0-9]/g, "");


他サイトで
replace(/[^0-9]/i, "");
とすれば良いとの記述があったので、
特に意味を調べずにそのまま利用しようとしたら
想定どおりに動きませんでした…。
gにすると正しく動作しました。

iやgについては
正規表現フラグと呼ぶそうです。

g  すべての一致に対して置換を実施。
i   大文字・小文字を区別しない検索。
m 複数行の文字列に対する処理で^や$を扱う場合に使用。

gが無かった為、ひとつ目の置換で終わってしまい、
ふたつ目の置換が実施されないという動きになってしまっていました。

コメント

このブログの人気の投稿

[JavaScript] jQueryDialogの右上の×閉じるボタンを非表示にする。

挨拶