如何从Jquery中的字符串中提取子字符串

时间:2010-10-09 23:12:45

标签: javascript jquery string

我想在textarea中写一条消息,并且能够使用@符号引用某个人。

e.g

  

请致电@Larry David   东西

提交表格时,我想提取人名,即Larry David。

如何使用Jquery提取此字符串?

2 个答案:

答案 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-']+)/;

会好一点,但仍会因其他名字而失败。

如果没有更好的方法来确定名称的结束位置,可能会出现名称错误。