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

正規表現について

例 文字列 var str=〇〇;
数字パターンA 1,2,3,4,5,6,7,...(整数)

数字パターンB 1.45, 3.333, 8.9,.....(数字+「ピリオド」+数字)

の以上のどちらのパターンにもマッチしないときはconsole.log('マッチしておりません')を出したいのですがどのように表現すればよいのでしょうか?

面倒な質問とは思いますがよろしくお願いします

if(str.match(//)){
console.log('マッチしておりません')
}

●質問者: 匿名質問者
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● 匿名回答2号
ベストアンサー

正規表現は否定形や複数マッチはあんまり得意じゃないというか、それを目的としたものじゃないから以下のようにやればいいんじゃないかな。

if(!str.match(/^[0-9]+$/) && !str.match(/^[0-9]+\.[0-9]+$/)){
 console.log('マッチしておりません')
}

どうしても正規表現のみでやりたいなら肯定先読みとかを駆使したトリックを使えばできるかもしれないけど、書くのも読むのもすごく大変になる。


匿名質問者さんのコメント
ありがとうございます!
関連質問

●質問をもっと探す●



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