2012-07-06 82 views
1

我希望使用.NET正則表達式創建一個正則表達式,該正則表達式接受一個輸入字符串並輸出一個字符串,其中字符從前面刪除,但數字刪除的字符取決於輸入字符串的長度。使用正則表達式(正則表達式)根據輸入字符串的長度去除字符

輸入字符串可以是:

  1. ROC1230NNNNNNNN
  2. ROC1230NNNNNNNNN
  3. ROCNNNNNNNN
  4. ROCNNNNNNNNN

'N' 是總是數字和 '123' 可以是任何數量組合。前兩種情況下的'0'總是'0','ROC'總是'ROC'。

在每種情況下,我只想返回'N'部分。即:

  1. NNNNNNNN
  2. nnnnnnnnn爲
  3. NNNNNNNN
  4. nnnnnnnnn爲

謝謝!

+0

你嘗試過什麼? 「任何數字組合」總是任何3位數字後跟一個0,或者是任意數字的非零數字後面跟一個0? – 2012-07-06 10:27:39

+0

這將是前者。 – Neo 2012-07-06 12:51:29

回答

1

我推測, 「123」 的部分永遠是3個位數,試試這個:

string value = Regex.Match(input, @"^ROC(\d{3}0)?(\d+)$").Groups[2].Value; 
+0

完美,這是一種享受。謝謝! – Neo 2012-07-06 12:51:56

+0

不客氣,我很樂意提供幫助。 – 2012-07-06 18:02:19

相關問題