1

正規98表現$RetailTransaction.IsContainsTender(98)を使用して式から取得するにはどうすればよいですか?

4

1 に答える 1

9

このような状況ではいつものように、最初にデータがどのように見えるか (複数の例を使用) と、そこから何を期待できるかを自問する必要があります。

最も簡単なルートは正規表現だけかもしれません

\d+

ただし、行に必要な桁数よりも多くの桁がある場合、これは失敗します。

括弧を考慮に入れることができます:

(?<=\()\d+(?=\))

これは、後読みおよび先読みアサーションを使用して、番号が完全に一致するようにします (キャプチャ グループに隠れないようにします)。

メソッド名など、他のコンテキストを使用することもできます。

(?<=IsContainsTender\()\d+(?=\))

これらすべてにより、誤って一致する可能性のある不要なデータに対して正規表現をより堅牢にすることができます。98必要なのは aと一致することだけである場合98、有効な正規表現であり、上記の例で必要なことを行います。したがって、一致させたいケースと、過度に単純化したアプローチで問題を引き起こす可能性のあるケースについて、もっとよく考えてください。

于 2012-05-22T12:08:01.510 に答える