0

私はこの正規表現を作成しました:

(?<=span class="ope">)?[a-z0-9]+?\.(pl|com|net\.pl|tk|org|org\.pl|eu)|$(?=<\/span>)$

、 などの文字列に一致しますがexample.pl、 .example12.comsomething.euも一致しdontwantthis.comます。

私の質問は、文字列が含まれている場合に文字列を一致させない方法dontwantthisですか?

4

2 に答える 2

3

おそらく、一致を循環するループで正規表現に従っているでしょう。この場合、dontwantthis部分文字列が存在するかどうかを確認するのがおそらく最も簡単continueです。正規表現で実装しようとすると、問題が発生するだけです。

于 2012-12-30T04:44:37.143 に答える
1

span正規表現を使用して要素からコンテンツを抽出しているようです。さて、これがあまり良い考えではない理由にもかかわらず...

……そのままの表情で。次に、一致する場合は、拒否する必要がある一致したエントリを除外します。

var $match = extractContentFromHtml($html);  // use regex here, return false if no match
if ($match && validMatch($match)) {
    // do something
}

validMatch(string)たとえば、値が配列に存在するかどうかを確認する必要があります。

于 2012-12-30T04:50:11.053 に答える