2012-12-14 36 views
5

我想在C#中構建一個具有以下特徵的正則表達式。C#正則表達式在結尾忽略額外的數據

  1. 的字符串與零個或多個數字
  2. 其次依次

我已經試過字符串末尾的字母 「ABC」

  • 開始

    \d?ABC 
    

    但仍然匹配諸如ZABC,ABCD,2ZABC之類的東西。

    任何指針?

  • 回答

    10

    您需要anchors表示字符串的開始和結束:

    ^\d?ABC$ 
    

    此外,?指0或1 0以上是*

    ^\d*ABC$ 
    

    另外要注意的是,根據.NET \d中的活動Culture可以解釋爲「任何Unicode數字字符」。如果你真的只想要ASCII數字使用字符類:

    ^[0-9]*ABC$ 
    

    該網站上的tutorial是一個很好的資源去學習正則表達式。

    +0

    +1對於泰國數字。 :) – zx81