2012-08-13 2 views
0

J'ai essayé d'insérer l'opérateur AND dans l'expression régulière, mais après quelques recherches, j'ai réalisé que l'expression régulière ne prend pas en charge l'opérateur AND. Quelqu'un peut-il m'aider à suggérer l'opérateur ET alternative. Le problème est: j'ai besoin de trouver des mots qui dans notre vocabulaire et de les mettre en évidence, mais des mots qui doivent être intacts dans les balises. Merci d'avance.Expressions régulières et opérateur AND logique

+2

peut vous donner un exemple du texte que vous voulez faire correspondre/correspond pas? – davidrac

+0

S'il vous plaît fournir l'expression régulière que vous avez jusqu'à présent. –

Répondre

1
if (preg_match($vocab, $word) && !preg_match($tag, $word)) highlight($word); 
0

Je pense que vous avez deux choix:

1.

if(preg_match($pat1, $subject) > 0 && preg_match($pat2, $subject) > 0){ 
    /* do something */ 
} 


2. utilisation préanalyse positif/négatif Simuler et:

Exemple: correspondre à toutes les balises html sauf span et div: </?(?!span\b)(?!div\b)[^>]+>
par De Droit Morgan = </?(?!(span|div)\b)[^>]+>

J'espère que ceux-ci peuvent vous aider :)