2

パターンがあり MMYYます(クレジットカードの有効期限)

各セクション(01と14)を分析する必要があります:だから私は試しました:

'0114'.split(/\d{2}/i) //  ["", "", ""]

実際には2桁が区切り文字として表示されるため、何も表示されません。

しかし、私はなんとかそれを行うことができました:

'0114'.match(/\d{2}/ig) //["01", "14"]

しかし、私はについて疑問に思いsplitます。

でもできますかsplit

4

3 に答える 3

9

例えば:

"1234".split(/(?=..$)/) => ["12", "34"]

任意の長さの文字列の一般的な解決策は不可能のようです。私たちが得ることができる最善の方法は次のようなものです。

str.split(str.length & 1 ? /(?=(?:..)*.$)/ : /(?=(?:..)+$)/)
于 2013-03-21T09:42:39.037 に答える
3

これはそれを行う必要があります:

   '0114'.split(/(?=..$)/)
于 2013-03-21T09:43:25.287 に答える
1

正規表現を使用する理由はありません-私は単に部分文字列を使用します:

var str = '0114';
var month = str.substr(0, 2);
var year = str.substr(2, 2);
console.log(month, year); // 01 14
于 2013-03-21T09:45:22.293 に答える