2012-03-15 9 views
1

RegExが任意の16進数に一致するようにしたいが、7E7Dと一致させたい。RegExのパターンを除外する

任意の16進数に一致させるには、[0-9A-F]{2}を使用します。どのようにして解凍された数字を除外することができますか?

あなたはこのような何か使用することができ
+1

ほとんどのエンジンまたはプログラムには、「は」のすべてに一致するregexpよりもはるかに効果的な、ある種の「not」機能があります。 私は最初にその方法を見てから、複雑なものをdescとして使用することをお勧めします。答えに。 – AoeAoe

答えて

1

7Eまたは7Dで失敗するネガティブ先読みを使用できます。次のパターンでは、文字列全体を一致させるのに、^$を使用します。文字列内の部分一致ではありません。

+0

ありがとうこれは働いた。私はTinyPGで生成されたパーサーでRegExをターミナルとして使うので、 '^'と '$'は必要ありません。 – woodtluk

+0

@ user1272072これがあなたの質問に答えるならば、[同意します](http://meta.stackexchange.com/q/5234/146395)の答えです。 – Alex

0

[0-68-F][0-F] || 7[0-CF]

||は、あなたがこの正規表現を使用している場所に応じて、動作しない場合がありますあなたはあなたの問題のように指定しませんでした。)

+0

これは機能しませんでした。私はTinyPGでC#を使用しています。とにかくありがとう。 – woodtluk

0

[0-9A-F&&[^7]][0-9A-F&&[^DE]]

+0

IDは機能しませんでした。私はそれが第1桁7と第2桁のDのEを持つ任意の16進数を無視すると思います。 – woodtluk

関連する問題