js split 正则表达式过滤引号中的逗号

vars="1,2,'a,b',3";vara=s.split(",");我想得到的数组是13a,b3如何实现字符串无限长,会有多个'字符串,字符串'的形式... var s = "1,2,'a,b',3";
var a = s.split(",");

我想得到的数组是
1
3
a,b
3
如何实现
字符串无限长,会有多个'字符串,字符串'的形式
展开
 我来答
百度网友2571d37bb
2015-11-16 · 知道合伙人软件行家
百度网友2571d37bb
知道合伙人软件行家
采纳数:1971 获赞数:7905
前端工程师

向TA提问 私信TA
展开全部

split() 方法用于把一个字符串分割成字符串数组。

语法

stringObject.split(separator,howmany)

参数

separator    必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。    

howmany    可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。   

返回值

一个字符串数组。该数组是通过在 separator 指定的边界处将字符串 stringObject 分割成子串创建的。返回的数组中的字串不包括separator 自身。

如果想通过正则表达式,完成按引号中的逗号进行拆分,下面是代码,仅供参考:

var str = 'sdfs,dhf,skjdf","sdfsdfsdfsd","sdfe';
str.split(/\",\"/g);
----> ["sdfs,dhf,skjdf", "sdfsdfsdfsd", "sdfe"]


郭某人来此
2015-10-06 · TA获得超过1646个赞
知道答主
回答量:952
采纳率:100%
帮助的人:90.8万
展开全部
直接用replace好了,贴个简单的例子给你,把一个字串内的逗号跟引号去掉
希望这个是符合你的需求的,你自己看看吧 ;

<html>
<head>
<script language="javascript" type="text/javascript">
function window_load(){
var str = "12,34'56\"78"; //12,34'56"78
str = str.replace(/[,'"]/g,"");
alert(str); // 返回12345678
}
</script>
</head>
<body onload="window_load();">

<body>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
自由de王国
2014-12-17 · TA获得超过1066个赞
知道小有建树答主
回答量:661
采纳率:50%
帮助的人:843万
展开全部
我想到两种方法,
第一种:s.split(",(?=(?:[^']*(?:'[^']*')?[^']*)*$)"),不过效率可能有点低,如果只是少量字符串应该可以。这是正则的方法。

第二种:var a = eval("["+s+"]");
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式