jQuery如何在一个字符串中获取两个符号中间的值
比如varchars="abc@foxmail.com"我怎么获取chars中'@'与'.'这两个符号中间的值,也就是foxmail??...
比如var chars=" abc@foxmail.com"
我怎么获取chars中 '@'与'.' 这两个符号中间的值,也就是foxmail ?? 展开
我怎么获取chars中 '@'与'.' 这两个符号中间的值,也就是foxmail ?? 展开
4个回答
展开全部
方法1,用字符串截取substring()和字符位置查询indexOf();
string.substring(start,end) 从string中截取一段字符串。
start:截取开始位置。
end:截取结束位置。
string.indexOf(findstr),查找指定的字符串在string中的位置
findstr:要找的字符串
var str1="aaa@hotmail.com";//要截取@到.之间的内容
var str2=str1.substring(str1.indexOf("@")+1,str1.indexOf("."));
console.log(str2);
方法2,用正则表达式
[\@]匹配@
[\.]匹配.
.匹配任意字符
+匹配前面内容一次或多次
*匹配签名内容0次或多次
()中的内容可以被替换为$1,就是我们要找的部分
$1,$2,……可以匹配正则式中(),按顺序编号第一个括号为$1,第二个位$2,以此类推
var str1="aaa@hotmail.com";//要截取@到.之间的内容
var reg=new RegExp('.*[\@]+(.*)[\.]+.*');
var str2=str1.replace(reg,"$1");
console.log(str2);
展开全部
var str = chars.substring(chars.indexOf('@'),chars.indexOf('.'));
根据邮件地址的组成方式
chars.indexOf('@')是取第一次出现@的索引,在你这里是3
chars.indexOf('.')是11
在截取子串substring
根据邮件地址的组成方式
chars.indexOf('@')是取第一次出现@的索引,在你这里是3
chars.indexOf('.')是11
在截取子串substring
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个跟jQuery无关,用正则获取把
var chars="abc@foxmail.com";
var ret=/@(.*)\./.exec(chars);
alert(ret[1]);
ret 中即为返回数组["@foxmail.", "foxmail"]
var chars="abc@foxmail.com";
var ret=/@(.*)\./.exec(chars);
alert(ret[1]);
ret 中即为返回数组["@foxmail.", "foxmail"]
追问
恩,谢谢,我获取abc@foxmail.com中@后面的所有值,也就是foxmail.com, 正则怎么写?
追答
/@(.*)$/.exec(chars)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先,这个可以用js直接来写,jquery有没有我不清楚,但有,我相信还不如js,因为本来就没几句话。
下面是我自己写的一个邮箱东西,你可以运行看看。
js部分:
//隐藏用户邮箱信息,格式:a*****g@abc.com
$(".btnEmil").click(function(){
var EmlAtHead = $(".lblEmil").text().split("@")[0];
var EmlAtFoot = $(".lblEmil").text().split("@")[1];
var EmlTxtHead = EmlAtHead.substr(0,1);
var EmlTxtLast = EmlAtHead.substr(-1);
var EmlTxtStr = "*";
for(var i=0;i<EmlAtHead.length-3;i++){
EmlTxtStr = EmlTxtStr + "*";
}
if(EmlAtHead.length==2){
$(".lblEmil").text(EmlTxtHead+EmlTxtStr+"@"+EmlAtFoot);
}
else if(EmlAtHead.length==1){
$(".lblEmil").text(EmlTxtStr+"@"+EmlAtFoot);
}
else{
$(".lblEmil").text(EmlTxtHead+EmlTxtStr+EmlTxtLast+"@"+EmlAtFoot);
}
})
HTML部分:
<div>
<span>邮箱</span>
<label class="lblEmil">abcdefg@abc.com</label>
<input class="btnEmil" type="button" value="点我一下" />
<br />
</div>
下面是我自己写的一个邮箱东西,你可以运行看看。
js部分:
//隐藏用户邮箱信息,格式:a*****g@abc.com
$(".btnEmil").click(function(){
var EmlAtHead = $(".lblEmil").text().split("@")[0];
var EmlAtFoot = $(".lblEmil").text().split("@")[1];
var EmlTxtHead = EmlAtHead.substr(0,1);
var EmlTxtLast = EmlAtHead.substr(-1);
var EmlTxtStr = "*";
for(var i=0;i<EmlAtHead.length-3;i++){
EmlTxtStr = EmlTxtStr + "*";
}
if(EmlAtHead.length==2){
$(".lblEmil").text(EmlTxtHead+EmlTxtStr+"@"+EmlAtFoot);
}
else if(EmlAtHead.length==1){
$(".lblEmil").text(EmlTxtStr+"@"+EmlAtFoot);
}
else{
$(".lblEmil").text(EmlTxtHead+EmlTxtStr+EmlTxtLast+"@"+EmlAtFoot);
}
})
HTML部分:
<div>
<span>邮箱</span>
<label class="lblEmil">abcdefg@abc.com</label>
<input class="btnEmil" type="button" value="点我一下" />
<br />
</div>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询