水平有点低,感觉应该这样写
var str="今年是2013年7月24日12:00:12,我打算在2023年7月24日12:01:10登月";
function Matches(inputStr,reg){// 对象
this.arr=[];
var n;
while(n=reg.exec(inputStr)){// 跟C#的FileStream的ReadByte方法和SqlDataReader的Read方法类似,读一次,读取位置提升一次,不断循环直到没有匹配的数据
if(n) this.arr.push(n);// 将存在的值存入数组中
};
this.value=this.arr[0];// 将value属性设置数组的第一个值。
this.groups=this.arr;// 将groups属性设置为存储得到数据的数组。
};
var m=new Matches(str,/\d+年\d+月\d+日/g);// 实例化对象,传入必要的参数。
alert(m.value);
alert(m.groups);