0

私には些細な作業のように見えましたが、過去1時間でこれを達成できませんでした。

正規表現は、「excludephrase」というフレーズを含まないすべての単語に一致する必要があります。

例:
Match:
'ok​​ string'
'いくつかのphrasOkは、フレーズにeがないため'
など...

一致しません:
'フレーズを除外します'
'一部のプレフィックス除外フレーズ''一部のフレーズ
を除外します'
など...

4

3 に答える 3

2

フレーズがある場合:

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

'sit' と 'adipiscing' ではなく、すべての単語を検索する正規表現は次のようになります。

\b(?(?=sit|adipiscing)^\w+|\w+)\b

PHPで:

$text = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.';

$matches = array();
preg_match_all("/\b(?(?=sit|adipiscing)^\w+|\w+)\b/i", $text,$matches);

var_dump($matches);
于 2012-06-26T12:07:59.397 に答える
1

それは正規表現になります^((?!phrase).)*$

于 2012-06-26T12:04:16.153 に答える
1

これを解決する最も簡単な方法:マッチング(自明)の正規表現と逆の条件。

Python での例:

>>> not(re.search ('exclude phrase','Some prefix exclude phrase'))
False
>>> not(re.search ('exclude phrase','exclude phrase some suffix'))
False
>>> not(re.search ('exclude phrase','ok string'))
True
于 2012-06-26T12:04:57.620 に答える