使用jQuery选择字符串中最后一个单词的第一个字母

使用jQuery选择字符串中最后一个单词的第一个字母,jquery,html,Jquery,Html,你好,我有一个列表,我想按姓氏筛选。我有字母a-z的a标签。目标是当用户单击一个字母时,列表将按姓氏过滤。因此,当用户单击“a”时,将显示姓氏以“a”开头的所有列表项 我相信我有足够的逻辑来显示/隐藏元素,但我需要帮助确定最后一个单词的第一个字母,以便实现我的逻辑 以下是HTML标记: <ul id="theList"> <li><a>John Aoe</a></li> <li><a>John B

你好,我有一个列表,我想按姓氏筛选。我有字母a-z的
a
标签。目标是当用户单击一个字母时,列表将按姓氏过滤。因此,当用户单击“a”时,将显示姓氏以“a”开头的所有列表项

我相信我有足够的逻辑来显示/隐藏元素,但我需要帮助确定最后一个单词的第一个字母,以便实现我的逻辑

以下是HTML标记:

<ul id="theList">
    <li><a>John Aoe</a></li>
    <li><a>John Boe</a></li>
    <li><a>John Coe</a></li>
    <li><a>John Doe</a></li>
</ul>
  • 约翰·奥伊
  • 约翰·鲍伊
  • 约翰·科
  • 无名氏
有什么想法吗


谢谢

我刚刚使用了一个警报,但是只要只有两个名字,代码就会得到最后一个单词的最后一个字母。 如果它们有中间的首字母,则
lastindexOf
行将起作用

var a=“John Aoe”.split(“”.pop().charAt(0);
var b=“John Coe”.split(“”.pop().charAt(0);
var c=“John Doe”.split(“”.pop().charAt(0);
var d=“最大R.Toady”
变量e=d.charAt(d.lastIndexOf(“”+1)

警报(a+”、“+b+”、“+c+”、“+e)
您可以根据以下要求使用正则表达式:

你可以用“李”来形容:

reg = new RegExp(letterchosen+'\w+$');
var listwitAlastword = $('li').filter(function () {
     return this.innerHTML.match(reg);
     });
$("#theList").find("li").each(function(){
  var a = $(this).find("a").text().split(" ");
  console.log(a[a.length-1].charAt(0))
});