如何搜索以特定字符串结尾的单词?

时间:2011-02-11 03:35:56

标签: javascript regex

我有基本的JavaScript代码,需要告知il'中有5个名称的结尾。我有一些代码可以告诉我们有多少代码包含lyi,而不仅仅是在最后。

<script type="text/javascript">
    var names = new Array(5);
    var name;

    function start_user_prompt() {
        for(i=0;i<5;i++) {
            name = prompt('Enter name '+(i+1));
            names[i] = name;
        }   
        e_names(names);
    }       
    function e_names(names) {
        var name_count = 0;
        for(var i in names) { 
            // this needs to be changed to search it correctly
            if((names[i].search(/ie/) > 0) || names[i].search(/y/) > 0) {
                name_count++;
            }
        }
        document.write('The number of special names is : '+name_count);
    } 
</script>

2 个答案:

答案 0 :(得分:3)

而不是/ie/,请使用/ie$/。这只会匹配以ie结尾的字符串。

答案 1 :(得分:3)

正则表达式中的$表示字符串结束。因此,您的正则表达式应为/ie$//y$/

只使用一个正则表达式/(ie|y)$/即可进一步简化。 |是一个OR,因此它将匹配以ie或y结尾的字符串。