7

RegExは常に私のアキレス腱でした。私は、ユーザーが自分の識別子を入力するWebアプリを書いています。RegexValidatorこの入力を検証するために使用しています。

識別子は次のようになります。

TN-In-PL-KW-2012-1234

そして、これは識別子が構築される方法です:

  • 最初の2文字は常にTN
  • 続いてハイフン
  • 次に、2文字、InつまりTe、、、YoまたはEt
  • ハイフン
  • 2つの大文字
  • 別のハイフン
  • 別の2つの大文字
  • ハイフン
  • 4桁、つまり1年なので、1970年から2012年の間の何か(4桁であれば無視できます)
  • ハイフン
  • 1〜4桁の序数

この識別子に一致するように正規表現を書くのを手伝ってください。

4

3 に答える 3

7
^TN-(In|Te|Yo|Et)-[A-Z]{2}-[A-Z]{2}-\d{4}-\d{1,4}$

コメントと同じように、正規表現のスキルを向上させたい場合は、Rubularをお勧めします。これは、正規表現を使用する必要があるときに覚えておくべきシンプルで実用的なページです。

于 2012-07-05T21:37:03.443 に答える
2

TN-(In|Te|Yo|Et)-([A-Z]{2}-){2}(19[7-9][0-9]|200[0-9]|201[0-2])-[0-9]{1,4}

于 2012-07-05T21:39:57.560 に答える
1
TN-((In)|(Te)|(Yo)|(Et))-[A-Z]{2}-[A-Z]{2}-\d{4}-\d{1,4}
于 2012-07-05T21:35:14.723 に答える