16進数で使用される文字の範囲を指定する
16進数の文字列は「0~9、a~f、A~F」のみで構成されます。その場合はこのような書き方になります。
using System.Text.RegularExpressions; private readonly Regex RegHex = new Regex("^[0-9a-fA-F]+$");
大文字小文字を区別しないオプションを付ける
または「大文字小文字を区別しない(RegexOptions.IgnoreCase)」というオプションをつけて、以下のようにも書けます。
private readonly Regex RegHex = new Regex("^[0-9a-f]+$", RegexOptions.IgnoreCase);
オプションを複数指定する
RegexOptionsはFlags属性がついていますので、複数指定する場合はビット演算の形で指定します。
以下は複数のオプションを指定した例です。2つの値を「|」で繋いでいます。
private readonly Regex RegHex = new Regex("^[0-9a-f]+$", RegexOptions.IgnoreCase | RegexOptions.Compiled);
Flags属性についてはこちら→FlagsAttribute クラス (System) | Microsoft Docs