2011-05-08 180 views
1

我有一個包含需要找到並替換以下類型的字符串的文本塊:如何用Regex解決這個問題?

結構

  • 1字母:A或S
  • 隨後6個數字
  • 其次用破折號( - )
  • 隨後一個或兩個數字

實例

  • A123456-34
  • A123456-2
  • S123456-11

我是一個完整的noob(第三次),以正則表達式和遇到問題搞清楚了這一點。

+5

如何憤怒的黑客不能這樣做呢? :) – 2011-05-08 16:42:08

回答

2

下面的表達式應該爲你工作:

(([AS])(\d{6})-(\d{1,2})) 
+4

或'(A | S)\ d {6} - \ d {1,2}'如果對組不感興趣。 – 2011-05-08 16:43:49

4
[AS]  # 1 Letter, A or S 
[0-9]{6} # 6 digits 
-   # dash 
[0-9]{1,2} # 1 or two digits