jquery 怎么用正则提取字符串里面的内容?
如题:jquery代码,比如:vara="文字:123,文字:234,文字:345,文字:456。文字:567?文字中文:123?";html代码:<ul><li>文字:...
如题:
jquery 代码,比如:var a = "文字:123,文字:234,文字:345,文字:456。文字:567?文字中文:123?";
html代码:
<ul>
<li>文字:123</li>
<li>文字:234</li>
<li>文字:345</li>
<li>文字:456</li>
<li>文字:567</li>
<li>文字:123</li>
</ul>
这样的用jquery什么方法来处理呢?
li里面的内容只能是a变量里面的内容,不能自己定义或者用字符串追加上去,用jquery什么方法来搞定啊?帮个忙哟 展开
jquery 代码,比如:var a = "文字:123,文字:234,文字:345,文字:456。文字:567?文字中文:123?";
html代码:
<ul>
<li>文字:123</li>
<li>文字:234</li>
<li>文字:345</li>
<li>文字:456</li>
<li>文字:567</li>
<li>文字:123</li>
</ul>
这样的用jquery什么方法来处理呢?
li里面的内容只能是a变量里面的内容,不能自己定义或者用字符串追加上去,用jquery什么方法来搞定啊?帮个忙哟 展开
展开全部
你好,
这个问题其实也简单,但不知道是不是你要的效果:
var a = "文字:123,文字:234,文字:345,文字:456。文字:567?文字中文:123?";
var arr = a.split(/,|。|?/); // ["文字:123", "文字:234", "文字:345", "文字:456", "文字:567", "文字中文:123", ""]
var rs = '<ul>';
$.each(arr, function(idx, item) {
// 非空验证
if (item) {
rs += '<li>' + item + '</li>';
}
});
rs += '</ul>';
console.log(rs); // <ul><li>文字:123</li><li>文字:234</li><li>文字:345</li><li>文字:456</li><li>文字:567</li><li>文字中文:123</li></ul>
这样得到的rs就是你上面的结果。如有疑问可追问。
更多追问追答
追问
恩,非常感谢!
这就是我要的效果,可是想把”中文“这两个也去掉呢?是不是在split方法里面写上,比如 var arr = a.split(/,|。|?|中文/);?
另外,如果js里面有很多类似这样的呢?大概有20多个这样的变量吧。都是从富文本框里面用match方法查找出来的,都是字符串。
这样的,该怎么处理,总不可能每个都单独去定义和处理吧?有没有好的方法?
追答
去掉中文就不在正则里面处理了,修改下代码如下:
var a = "文字:123,文字:234,文字:345,文字:456。文字:567?文字中文:123?";
var arr = a.split(/,|。|?/);
var rs = '<ul>';
$.each(arr, function(idx, item) {
// 非空验证
if (item) {
rs += '<li>' + item.replace(/中文/g, '') + '</li>';
}
});
rs += '</ul>';
console.log(rs);
看看,这些里面就没有“中文”了。
展开全部
js我不怎么会,按我的理解,比较笨的办法:
var a = "文字:123,文字:234,文字:345,文字:456,文字:567";
var arr =a.split(',');
console.log(arr);
for(var i in arr){
alert(arr[i])
$("ul ").append("<li>"+arr[i]+"</li>"); //可以给ul加个id把li的内容都append进去
}
var a = "文字:123,文字:234,文字:345,文字:456,文字:567";
var arr =a.split(',');
console.log(arr);
for(var i in arr){
alert(arr[i])
$("ul ").append("<li>"+arr[i]+"</li>"); //可以给ul加个id把li的内容都append进去
}
追问
非常感谢!
如果用for(var i in arr){}方法来做的话,有个不好的问题,因为页面有很多这样的变量,用for来做的话,不好处理吧?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询