我的代码是:
var st="man myfile=l/p/nm.mp3 yourfile=/o/mj/nnc.mp3 ou p";
var patt=/myfile.[\W|\w]*.mp3\s/;
var s=patt.exec(st);
var s2=s.slice(3,4);
alert(s2);
但是 slice() 什么也没给我,而 substr() 方法给了我一个错误:
Object doesn't support this method
为什么?
我的代码是:
var st="man myfile=l/p/nm.mp3 yourfile=/o/mj/nnc.mp3 ou p";
var patt=/myfile.[\W|\w]*.mp3\s/;
var s=patt.exec(st);
var s2=s.slice(3,4);
alert(s2);
但是 slice() 什么也没给我,而 substr() 方法给了我一个错误:
Object doesn't support this method
为什么?
slice
: slice() 方法将数组中的选定元素作为新的数组对象返回。
substring
: substring() 方法从字符串中提取两个指定索引之间的字符,并返回新的子字符串。
var st="man myfile=l/p/nm.mp3 yourfile=/o/mj/nnc.mp3 ou p";
var patt=/myfile.[\W|\w]*.mp3\s/;
var s=patt.exec(st);
s
现在是包含以下内容的数组:["myfile=l/p/nm.mp3 yourfile=/o/mj/nnc.mp3 "]
var s2=s.slice(3,4);
元素3
不存在,所以它返回null
。
关于substring
它不能在数组上使用:)所以你必须做这样的事情:
var s2=s[0].substring(3,4);