2010-11-26 30 views
1

Tout simplement, comment pouvez-vous savoir si le «the» est présent dans la chaîne suivante: «Eh bien ces derniers temps, il semble y avoir beaucoup de confusion entre la façon dont ils utilisent, THEre et THEIR, je ne vois pas quel est le gros problème?Comment savoir si un mot est présent COMME MOT dans une chaîne?

L'aiguille est mise en majuscule pour l'exagération, essayant juste de comprendre comment retourner le mot que l'on trouve dans la chaîne, mais si la chaîne était remplie de theres, they'res, et the, elle ne le trouverait pas.

Merci

Répondre

7

Faites une recherche regex pour /\bthe\b/.

preg_match('/\bthe\b/', $text) 
+0

N'oubliez pas la ponctuation! –

+3

@Mark '\ b' signifie" limite de mot "et inclut la ponctuation. – deceze

2

recherche pour 'the' [espace supplémentaire au début et à la fin]

+2

** La méthode ** ci-dessus ne fonctionnera pas toujours. – deceze

0

Qu'en est-

/* if(stristr($haystack, 'the')){ 

    // do something 

} */ 

doh n'a pas lu la question d'assez près.

+0

"Eh bien, ces derniers temps, il semble qu'il y ait beaucoup de confusion entre l'utilisation de THEY, THERE et THEIR, je ne vois pas quel est le problème?" – deceze

+0

Euh, je suis perdu? stristr est insensible à la casse, donc il retourne vrai dans mon exemple. – niggles

+0

Il retourne également vrai si la chaîne est "Eh bien ces derniers temps, THEre semble être beaucoup de confusion." Ce qui est ce que le PO ne voulait pas * spécifiquement. – deceze