我目前正在解析SQL Server的一些數據,我需要正則表達式的幫助。
我在Sql Server 2005中有一個程序集,可以幫助我用C#替換字符串。Regex.Replace()方法。
我需要解析以下內容。
Strings:
CAD 90890
(CAD 90892)
CAD G67859
CAD 34G56
CAD 3S56.
AX CAD 890990
CAD 783783 MX
Needed Results:
90890
90892
G67859
34G56
3S56
890990
783783
SELECT TOP 25 CADCODE, dbo.RegExReplace(CADCODE, '*pattern*', '$1')
FROM dbo.CADCODES
WHERE CADCODE LIKE '%CAD%'
我需要獲得CAD單詞後面的程序串,直到遇到一個空格或任何非數字或數字。我設法弄到了數字,但是對其他人來說確實失敗了。我試圖讓它工作,但我找不到真正的解決方案。
在此先感謝。
更新,以反映新的字符串
AX CAD 890990
CAD 783783 MX
如果某些字符串不是以CAD開頭,而是後跟字母數字字符,會發生什麼? – 2010-09-15 19:58:56
@Callum Rogers - 無論如何我都捕獲它們,但問題並沒有定義這個位是否重要。我可能會問你一樣 - 如果OP想要在任何情況下捕獲該怎麼辦? – Kobi 2010-09-15 20:00:54
[a-zA-Z _] * \ d \ w *完全匹配我需要了解的是如何獲得替換的輸出$ 1,因爲我需要完全消除CAD。 – 2010-09-15 20:03:42