我想在textarea中写一条消息,并且能够使用@符号引用某个人。
e.g
请致电@Larry David 东西
提交表格时,我想提取人名,即Larry David。
如何使用Jquery提取此字符串?
答案 0 :(得分:5)
如果人名是Larry David Regarding
怎么办?我认为你能做的最好就是提取Larry
:
var result = $('#textareaId').val().match(/\@(\w+)/);
if (result != null && result.length > 1) {
alert(result[1]);
}
答案 1 :(得分:1)
很好地匹配你的要求:
var str = "Please call @Larry David regarding something";
var re = /@(\w+\s\w+)/;
var name = str.match(re);
if(name){
alert(name[1])
}
但对于像foo-bar,O'Donald等名字来说,它会失败。
正则表达式,例如
var re = /@(\w+\s[\w-']+)/;
会好一点,但仍会因其他名字而失败。
如果没有更好的方法来确定名称的结束位置,可能会出现名称错误。