鉴于网址:http://localhost:3000/test/tagger.html?id=31415
我需要删除所有内容,包括=
符号,并将等号右侧的值设置为TextBox字段。我有以下匹配等号,但保留它。我该如何删除它?
var url = "http://localhost:3000/test/tagger.html?id=31415";
var regex = /=.*/; // match '=' and capture everything that follows
var accountId = url.match(regex);
$(".accountNumber").val(accountId);
答案 0 :(得分:4)
您也可以使用
var accountId = url.substr(url.indexOf("=") + 1); //Returns everything after `=`
修改:
要检查网址中是否存在=
,我们可以像这样简单地添加if
:
if(url.indexOf("=") != -1){
var accountId = url.substr(url.indexOf("=") + 1); //Returns everything after `=`
}
答案 1 :(得分:2)
您可以使用捕获组:
/=(.*)/
或许,更好的解决方案是使用
检查id
数值
/\bid=(\d+)/
然后通过第1组访问此值:
var accountId = url.match(regex)[1];
请参阅updated demo
var url = "http://localhost:3000/test/tagger.html?id=31415";
var regex = /\bid=(\d+)/;
var accountId = url.match(regex)[1];
$(".accountNumber").val(accountId);
答案 2 :(得分:0)
var url = "http://localhost:3000/test/tagger.html?id=31415";
var regex = /=(.*)/; // match '=' and capture everything that follows
var accountId = url.match(regex);
$(".accountNumber").val(accountId[1]);

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<input type='text' class="accountNumber">
&#13;
捕获小组=(.*)
accountId[1]
将捕获括号内的内容
答案 3 :(得分:0)
var url = "http://localhost:3000/test/tagger.html?id=31415";
var arr = url.split("=");
var val = arr[1];
答案 4 :(得分:0)
这将删除所有内容,包括第一个'='
var regex = /^[^=]*=/; // match '=' and capture everything that follows
var accountId = url.replace(regex, '');