我需要爲C#構建一個正則表達式,以捕獲select子句中的'from'關鍵字之後的所有表名。例如如何在C#中使用正則表達式獲取所有表名?
.
.
.
SELECT field1, field2
FROM table1
WHERE condition1
.
.
.
SELECT field3, field4
FROM table2
WHERE condition2
.
.
.
裏有文件的多個選擇條款,我嘗試閱讀,並且可以有選擇之間的任何字符(包括新行,「:」,「_」和其他任何字符) 。 我應該如何構建我的正則表達式以獲取所有表名稱?
感謝
編輯: 我已經找到一個辦法讓所有的表名。
\s*SELECT[^;]*FROM\s*(?<key>[^\n]*)
這可能會在某天幫助某人。 感謝
當我嘗試'SELECT [\ D | \ d] * FROM(? [^ \ n] *)'時,它發現一個匹配以第一個選擇開始並一直延伸到最後一個。我反而希望它匹配所有選擇並返回其所有表名。 –
Alpay
給這個網站一試,總是幫我找出RegExes http://regexpal.com/ – Charleh
@Charleh是爲JavaScript正則表達式。對於.NET,你應該使用[RegexHero](http://regexhero.net) –