怎么用js提取字符串中的某一段字符 15
假设用一段字符串是?id=632573&id=79323?ed=7947怎么才能将632573这段字符提取出来呢?我用varb="?id=632573&id=79323?...
假设用一段字符串是?id=632573&id=79323?ed=7947
怎么才能将632573这段字符提取出来呢?
我用var b = "?id=632573&id=79323?ed=7947".replace(/^.+?id\=/,'');提取的是632573&id=79323?ed=7947不是632573 展开
怎么才能将632573这段字符提取出来呢?
我用var b = "?id=632573&id=79323?ed=7947".replace(/^.+?id\=/,'');提取的是632573&id=79323?ed=7947不是632573 展开
7个回答
推荐于2018-05-17 · 知道合伙人数码行家
可以叫我表哥
知道合伙人数码行家
向TA提问 私信TA
知道合伙人数码行家
采纳数:25897
获赞数:1464977
2010年毕业于北京化工大学北方学院计算机科学与技术专业毕业,学士学位,工程电子技术行业4年从业经验。
向TA提问 私信TA
关注
展开全部
String.prototype.getQuery = function(name)
{
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = this.substr(this.indexOf("\?")+1).match(reg);
if (r!=null) return unescape(r[2]); return null;
}
var s = "web1.aspx?status=item&mode=edit";
alert(s.getQuery("status"));
alert(s.getQuery("mode"));
String.prototype.getQuery = function(name)
的意思是为String对象增加一个getQuery(name)方法.
{
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = this.substr(this.indexOf("\?")+1).match(reg);
if (r!=null) return unescape(r[2]); return null;
}
var s = "web1.aspx?status=item&mode=edit";
alert(s.getQuery("status"));
alert(s.getQuery("mode"));
String.prototype.getQuery = function(name)
的意思是为String对象增加一个getQuery(name)方法.
展开全部
var url ='?id=632573?id=79323&ed=7947';
var str = url.substr(1);
strs = str.split("?");
var theRequest = new Object();
theRequest[strs[0].split("=")[0]]=unescape(strs[0].split("=")[1]);
var id = theRequest['id']; //取得ID
alert(id);
以上仅解决你这个例子的情况,以为大多数情况下URL参数的键名都不是一样的
而且开头一个?中间都是& 所以实际可以一次性获取全部的参数的
//这个是正常的URL注意id和id2键名不一样中间都是&间隔
var url ='?id=632573&id2=79323&ed=7947';
var str = url.substr(1); //去掉第一个?
strs = str.split("&");//以&分割
var theRequest = new Object();
//取得全部并赋值
for(var i = 0; i < strs.length; i ++) {
theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]);
}
//输出
var id = theRequest['id']; //取得ID
var id2 = theRequest['id2']; //取得ID2
var ed = theRequest['ed']; //取得ed
alert(id);
alert(id2);
alert(ed);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
答案一:"?id=632573&id=79323?ed=7947".replace(/^.*?id=(\d+).*$/,'$1')
答案二:"?id=632573&id=79323?ed=7947".replace(/^.*?(\d+).*$/,'$1')
测试通过的~请采纳~不明白的可以继续追问~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看到楼上好多人都写了,我也写了一个,希望能帮到你:
var b = "rwewerwer?id=632573&id=79323?ed=7947".match(/(\d+)/g)[0];
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
var str = "?id=632573&id=79323?ed=7947";
var s = str.indexOf('=')+1;//第一个=出现的位置
var e = str.indexOf('&');//第一个&出现的位置
var re = str.substring(s,e);//返回的值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询