人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

javascriptの正規表現で「半角数字一桁.」で行が始まるのをマッチしたいんですがうまくいかないので教えてください。

var regtags = new RegExp("^[0-9]\..+", "mg");

という表現でマッチさせてるんですが、
289
などと数字だけの行もマッチしてしまい、困っています。解決できる表現があればよろしくお願いします。

●質問者: lemolemo75
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:JavaScript mg regexp マッチ 数字
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● edvakf
●40ポイント

JavaScript の文字リテラル内ではバックスラッシュがエスケープ記号の役割ですので、バックスラッシュ自信を表すときは2つ重ねないといけません。

javascript:alert(new RegExp("^[0-9]\\..+", "mg"))
// => /^[0-9]\..+/gm
javascript:alert(new RegExp("^[0-9]\..+", "mg"))
// => /^[0-9]..+/gm
◎質問者からの返答

ありがとうございます!おかげで解決できました!


2 ● tsukasa57
●30ポイント

以下のコードで出来ると思います。

var regtags = new RegExp("^[0-9]\\.");
var str = "1.";
if (str.search(regtags) != -1)
 document.write("Match!!");
else
 document.write("Unmatch!!");

ちなみに、JavaScript の実行は http://www.3site.eu/jstests/jhp/ でコードを貼り付けて CTRL+ENTER で実行すれば簡単に確認できます。

◎質問者からの返答

こっちでもできました。ありがとうございます。とても勉強になります。


3 ● Cherenkov
●10ポイント

ちがったらごめんなさい。

var regtags = /^\d{1}\..+/;


4 ● km1967
●10ポイント

半角数字だけの行は、半角数字ではじまる行に含まれます。

ですから、ご質問の正規表現は正しいのです。

それがダメだというなら、もっと条件を細かく指定していただかないと

正しい回答はできません。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ