J'ai des problèmes avec Ruby Regex.
Comment faites-vous et (&) Regex dans Ruby? P>
EX: P>
cat and dog cat dog I just want to match "cat and dog"
5 Réponses :
Vous pouvez faire quelque chose comme A et utiliser un look positif en avant voir Ce lookahead positif L'avantage est qu'il correspondra également à p> chien et chat p>
blockquote> et non seulement p> chat et chien p>
blockQuote> mais il correspondra également à p> chiens et chats p>
blockQuote> Si vous voulez des correspondances exactes, utilisez cette p> (? =. * CAT) CODE> Vérifie s'il y a" CAT " Quelque part dans la chaîne, la même chose est faite pour "chien" en utilisant (? =. * chien) code>. Si ces deux assertions sont vraies, la chaîne complète est appariée avec le . * Code> à la fin. P>
(?=.*\bcat\b)(?=.*\bdog\b).*
et est l'action par défaut dans une REGEXP, c'est-à-dire la première correspondance que cela puis suivi de cela et ainsi de suite.
correspondre à la chat et au chien, utilisez quelque chose comme p> Ce qui signifie, correspond à "Cat" suivi de quoi que ce soit puis suivi de "chien". Mais encore une fois, j'ai peut-être mal compris votre question ... p> p>
Cela dépend de ce que vous voulez.
Vous pouvez utiliser une carte sauvage p> ou p> ou p>
Votre question n'est pas très claire.
Si vous souhaitez ne correspondre que ces chaînes contenant les deux em> "chat" et em> "chien" (peut-être comme des parties de un mot), vous pouvez faire: p> La regex ci-dessus correspondra "dogme de concaténation", mais pas "Concaténation". P> Si vous voulez Assurez-vous que "CAT" et "chien" apparaissent comme des mots par eux-mêmes, faites: p> La regex ci-dessus correspondra "chat et chien", mais pas "dogme de concaténation" ou "chat dogme". P> Source: http: / /Ruby-Doc.org/docs/programmingRuby/html/intro.html#s5 p> p>
Il n'y a pas d'opérateur et code> dans regexp code> S, simplement parce que cela n'a pas de sens. Il sera jamais em> match: comment une chaîne code> soit être 'CAT' code> et em> 'chien' < / code> en même temps? p>
schrodinger.pet.speciies.to_s code>
Bien sûr, une chaîne peut être à la fois un "chat" et "chien" en même temps - "un chat et un chien sont dans la même chaîne" code>.