[javascript] js中的split正则问题

symbol_bc 2010-12-21 04:49:23

<script type="text/javascript">
var f = function() {
var str = "M100L200L300L400Z";

var ar = str.split(/[M,L,Z]/);

alert(ar.length);
}
</script>


代码很简单,这样的代码,在ie中ar.length = 4, 在ff中 ar.length = 6
这么简单的代码居然都不一样,真是气死我了,我想要ie中的结果,请问怎么改正则表达式
能让ff中也等于4
...全文
473 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
liyoubaidu 2010-12-22
  • 打赏
  • 举报
回复
str.split(/[M,L,Z]/,true);
cjh200102 2010-12-22
  • 打赏
  • 举报
回复
浏览器引起的问题
kgodanning 2010-12-22
  • 打赏
  • 举报
回复
这样呀,我也试试
GlyphVectory 2010-12-21
  • 打赏
  • 举报
回复
split可以用正则表达式?我第一次听说。
你可以用string.match等吗,js的正则表达式对象
阿非 2010-12-21
  • 打赏
  • 举报
回复

<script type="text/javascript">
var f = function() {
var str = "M100L200L300L400Z";

if(!(!-[1,]))
{
var t=ar.join(',');
ar=t.slice(1,t.length-1).split(',');
}
alert(ar.length);
}
f();
</script>
wangting0613 2010-12-21
  • 打赏
  • 举报
回复
用splic切割这样子不行吗
阿非 2010-12-21
  • 打赏
  • 举报
回复
这个不是正则的问题,而是浏览器的问题

JavaScript split Bugs: Fixed!
http://blog.stevenlevithan.com/archives/cross-browser-split
newdigitime 2010-12-21
  • 打赏
  • 举报
回复
IE与FF的确有这种区别.
应该是IE用正则时,自动把空值丢了.
symbol_bc 2010-12-21
  • 打赏
  • 举报
回复
正则的牛人们都干嘛去了?还没到下班时间呢吧
symbol_bc 2010-12-21
  • 打赏
  • 举报
回复
难道没人会吗?快来人啊
萤火架构 2010-12-21
  • 打赏
  • 举报
回复
遍历下,去掉空的,没想出来别的办法!

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧