2012-12-14 18 views
5

次のような特徴を持つC#で正規表現を作成しようとしています。C#正規表現は末尾の余分なデータを無視します

  1. は、文字列は、私が試した

文字列の最後の文字が続く "ABC"

  • 続くゼロ以上の数字
  • で始まる

    \d?ABC 
    

    と一致していますが、ZABCABCD2ZABCなどと一致しています。

    任意のポインタ?

  • 答えて

    10

    あなたは、文字列の開始と終了を表すためにanchorsが必要:

    ^\d?ABC$ 
    

    また、?は0または1 0以上が*であることを意味:

    ^\d*ABC$ 
    

    はまたに応じていることに注意してください.NET \dのアクティブCultureは、「任意のUnicode数字文字」として解釈できます。あなたは本当に唯一のASCII数字は、文字クラスを使用したい場合:

    ^[0-9]*ABC$ 
    

    tutorialをそのウェブサイト上で正規表現を学ぶのに最適なリソースです。

    +0

    +1タイ語数字については、+1を書いてください。 :) – zx81

    関連する問題