1. ホーム
  2. javascript

[解決済み] RegexとISO8601形式のDateTime [重複]。

2022-02-10 16:41:03

質問

ISO8601形式のDateTime文字列があります。

2012-10-06T04:13:00+00:00

と、この文字列にマッチしない以下の正規表現があります。

#(\d{4})-(\d{2})-(\d{2})T(\d{2})\:(\d{2})\:(\d{2})\+(\d{2})\:(\d{2})#

なぜマッチしないのかがわからない。

メタ文字をエスケープしました、私としてはOKのようです。

http://jsfiddle.net/5n5vk/2/

EDIT :

正しい方法 http://jsfiddle.net/5n5vk/3/

解決方法は?

jsで正規表現を指定する場合、引用符で囲まないでください。フォワードスラッシュで十分です。

alert($('#datepicker').val());

if($('#datepicker').val().match(
    /(\d{4})-(\d{2})-(\d{2})T(\d{2})\:(\d{2})\:(\d{2})[+-](\d{2})\:(\d{2})/
)) {
    alert('ok');
} else {
    alert('not ok');
}​