簡體   English   中英

閱讀文本文件的某些行

[英]Reading in certain lines of a text file

是的,我已經問過這個問題,但是這個問題要具體得多。 上次我想忽略文件的前2行和最后一行。 但是令我吃驚的是,任何人都可以在想要閱讀的內容之前和之后放入任意多的行,在這種情況下,我實現的代碼將投入使用。

示例文件

USE [Shelley's Other Database]  
CREATE TABLE db.exmpcustomers(  
 fname varchar(100) NULL,  
 lname varchar(100) NULL,  
 dateofbirth date NULL,  
 housenumber int NULL,  
 streetname varchar(100) NULL  
) ON [PRIMARY]

我需要做的是弄清楚我的數據從哪里開始(是fname-但記住它可以被稱為任何東西,所以我不能使用正則表達式來查找'f'),在哪里結束(最后一個NULL),然后讀取在那里面。 或者,您知道讀文件並選擇該數據。 隨你。
我考慮過使用正則表達式來查找括號,但是它也不會在我的數據類型中使用括號嗎?

有任何想法嗎? 任何事情都會有所幫助,我完全被困住了。

編輯

哦,而且,原始文件實際上在數據(縮進)之前有空格/制表符,但是我不確定這是否會更改任何內容。

我只是在括號之間使用正則表達式貪婪匹配數據。 只要no )緊跟在ON ,並且no (位於CREATE之前),內容中的括號實際上就無關緊要。

如果您不太了解SQL腳本,將控制權暴露給其他人是個好主意嗎? 為什么不創建一個具有相同好處的簡單DSL? 例如:

DATABASE databasenamegoeshere
TABLE tablenamegoeshere
FIELD name type default
FIELD name type default
FIELD name type default

然后將其轉換為相應的SQL代碼? 似乎更安全。還是必須執行SQL?

我在其他問題中提供的正則表達式將完全匹配您的數據。 您的問題實際上是另一個問題的重復。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM