2014-08-27 1 views
0

Единственная функция, я могу использовать это StrPos, скажем, я набор строк: cat dog elephantс помощью StrPos вернуть истину, если строка содержит любой из строк из набора

, и я хочу знать, если ключевое слово содержит либо любую из строк выше.

for at => True (contains inside cat) for og => True (contains inside dog) for asdasd => False (contains inside elephant)

Я попытался это:

strpos("keyword",("cat" || "dog" || "elephant"))

, но не повезло.

Надежда кто-то может помочь

+0

Какой язык? –

+0

@larsmans это на самом деле php-based. Поэтому PHP может помочь. –

+0

@nneonneo не могли бы вы привести пример? –

ответ

1

Существуют ли какие-либо ограничения по ключевому слову и строк? Если они не будут содержать определенный характер, скажем, «~», то вы можете просто использовать это:

if (strpos(<your keyword>,implode('~',<array of strings>)) !== FALSE) 
{ 
    <do something> 
} 

Это не может быть использована, если вы не имеете никакого контроля над персонажами вашего ключевого слова и строки. В том, что может вы можете проверить каждую строку в массиве отдельно:

foreach (<array of strings> as $string) 
{ 
    if (strpos(<your keyword>,$string) !== FALSE) 
    { 
    <do something> 
    } 
} 

Массив явно путь для хранения строк.

Смежные вопросы