英数字の文字列を3つのセクションに分割する正規表現ですか?

私は多くの異なる形式の入力文字列を持っており、入力文字列を3つのセクションに分割する必要があります。以下にいくつかの例を示します(いくつかの可能性がありますが)。

1A1 = 1、A、1

123AA44 = 123、AA、44

AA44 =空、AA、44

44AA = 44、AA、空

これらのセクションの追加の制約:

  • 第1セクションは数字で、1〜4文字です。
  • 2番目のセクションはアルファのみで1〜3文字の長さです
  • 3番目のセクションには数字または英数字を使用でき、長さは1〜4文字です。

私は下のコードで私の正規表現の知識の終わりに達しました。
3つのセクションの1つが入力に空のままである場合を除いて、すべてのシナリオで機能します。助けが要る!ありがとう。

Regex regex = new Regex("(?[0-9]{1,4})(?[a-zA-Z]{1,3})(?[0-9a-zA-Z]{1,4})");
Match match = regex.Match(inputString);

string 1 = match.Groups["Section1"].Value;
string 2 = match.Groups["Section2"].Value;
string 3 = match.Groups["Section3"].Value;
ベストアンサー

これを試しましたか?

Regex regex = new Regex("(?[0-9]{0,4})(?[a-zA-Z]{0,3})(?[0-9a-zA-Z]{1,4})");

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です