2011-12-06 12 views
2

var str = "7-Dec-1985" var str = "12-Jan-1703" var str = "18-Feb-1999"文字列(JavaScriptの)の最後の番号を取得する

どのように私は、文字列からちょうど一年引っ張っについて得たのでしょうか?私はいくつかの異なる正規表現を試しましたが、どれも動作していないようです。

私は期待していたでしょうre = new RegExp(/(\d+)\D*\z/);勤勉だったが悲しいことにそれはしなかった。

あなたstrのすべて(s)は、これはあなたのために働くだろう、セパレータとして-を使用するので、任意の提案は非常に

+0

're = new RegExp(/(\ d +)\ D * \ z /);'は実際には2つの正規表現オブジェクトを作成しています。最初は '/(\ d +)\ D * \ z/'に変換され、次に' RegExp'コンストラクタに渡されます。通常、 'new RegExp'を使うのは、パターンを動的に構築し、それをコンストラクタに文字列として渡す必要がある場合だけです。それ以外の場合は 're = /(\ d +)\ D * \ z /;'は完全にokです。 – Yoshi

+1

ここに正規表現が必要な理由はありません。 RegExpは一般に高価であり、注意して使用する必要があります。 – emyller

答えて

8

をいただければ幸いです。

var str = "7-Dec-1985", 
    arr = str.split('-'), 
    year = arr[2]; 

console.log(year); 
+3

分割を使用できるときは正規表現を使用しないでください。 –

+0

ありがとう、これは完全に動作します。しかし、年後にはもう少し情報があることが分かります。 "7-Dec-1985 12:00 AM"弦から時間を簡単に取り除くことはできますか? –

+2

"1985年7月12日12:00 AM" .split( '')[0] .split( ' - ')[2] – Yoshi

9

これはそれを

var year = str.match(/\d+$/)[0]; 
を行う必要があります
関連する問題