2009-07-02 86 views
2

在PHP中,我可以使用strpbrk函數來確定某個字符串是否包含特定的一組字符。有沒有辦法在JavaScript中做到這一點?JavaScript的等效PHP的strpbrk函數?

TIA。

編輯:對於那些可能知道JS而不是PHP的人,strpbrk接受一個輸入字符串和一個包含你想要匹配作爲其參數的字符串,並返回一個字符串,從第一個字符開始,如果找到匹配項,或false如果不是。

回答

1

在這裏看到:Javascript equivalent for PHP's strpbrk

function strpbrk (haystack, char_list) { 
    // http://kevin.vanzonneveld.net 
    // + original by: Alfonso Jimenez (http://www.alfonsojimenez.com) 
    // + bugfixed by: Onno Marsman 
    // + revised by: Christoph 
    // + improved by: Brett Zamir (http://brett-zamir.me) 
    // *  example 1: strpbrk('This is a Simple text.', 'is'); 
    // *  returns 1: 'is is a Simple text.' 
    for (var i = 0, len = haystack.length; i < len; ++i) { 
    if (char_list.indexOf(haystack.charAt(i)) >= 0) { 
     return haystack.slice(i); 
    } 
    } 
    return false; 
} 
+0

甜蜜的,謝謝!非常感激。 – benjy 2009-07-02 19:00:45

2

任何時候,我需要在JavaScript中equivielent PHP函數,我轉向 php.js

大部分的功能都沒有依賴性,可N爲削減隨意粘貼。

0

Yes

對於那些打主場比賽,http://phpjs.org是一個神奇的網站與誰正在努力在JavaScript中使用PHP的基礎功能API的主要部分許多貢獻者。你可以下載單個函數,或者你可以獲得許多函數的包。

編輯:對於所有那些你張貼到http://kevin.vanzonneveld.net注意,對於功能的新的主站點是http://www.phpjs.org

0
function strpbrk(string, chars) { 
    for(var i = 0, len = string.length; i < len; ++i) { 
     if(chars.indexOf(string.charAt(i)) >= 0) 
      return string.substring(i); 
    } 

    return false; 
}