2011-02-11 107 views
0

我有基本的JavaScript代碼,需要告訴'我'或'ly'中5個結尾有多少個名字。我有代碼告訴有多少包含'ly'或'i',只是在最後。如何搜索以特定字符串結尾的單詞?

<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

正則表達式中的$表示字符串的結尾。所以你的regexps應該是/ie$//y$/

只需使用一個正則表達式/(ie|y)$/即可進一步簡化。 |是一個OR,所以它會匹配以ie或y結尾的字符串。

2

而不是/ ie /,使用/ ie $ /。這隻會匹配以ie結尾的字符串。

+0

它也與* ff *一起使用嗎? – 2011-02-11 05:08:10

相關問題