在 Visual Studio 中搜尋文字有許多選擇,今天介紹許多好用的搜尋技巧。
第一種大家耳熟能詳的,就是用 Ctrl + F 立即開始搜尋 ( Quick Find ),你可以選擇「目前文件(Current Document)」、「所有開啟的文件(All Open Documents)」、「目前專案(Current Project)」或「整個方案(Entire Solution)」,如下圖:
我個人在專案開發上雖然對這個功能很依賴,但有時後也蠻討厭的,因為每次都會跳出一個 Find and Replace 的視窗讓我選,大部分的時候我只是要搜尋目前文件的文字而已,沒必要每次都選擇這麼多選項,且你上一次搜尋 Current Project 的話,這次想搜尋 Current Document 就要重選一次 Look in 欄位,我自己是覺得蠻麻煩的。
第二種很特別,就是按下 Ctrl + / 快速鍵可以進入 command line 視窗, 直接輸入要查詢的文字後按下 Enter 就可以搜尋了,也可以連續按 Enter 搜尋下一筆,也可以按下 Shift + Enter 往上搜尋,真的很方便喔!
除此之外,還可以利用 command line 視窗執行一些常見的 Macro 指令,你只要按下 Ctrl + / 之後先輸入一個大於符號 ( > ) 就可以輸入或選擇巨集了,像我最常用的指令有兩個:
>op 開啟專案
>of 開啟檔案
你如果有自訂的巨集(Macro)也可以用這種方式快速啟動!
第三種搜尋方式也是我蠻常用的,叫做 "遞增搜尋 (Incremental Search)",快速鍵是 Ctrl + I ,按下去之後畫面的正中央匯出線一個「望遠鏡」的圖示,如下圖示:
出現之後就可以直接輸入關鍵字,打幾個字他就搜尋幾的字,只要有找到就會跳到那個地方去,直到按下 Esc 按鍵才會停止搜尋,如果你要搜尋下一個的話,可以直接按下 F3 或連續按下 Ctrl + I 就會重複上一次搜尋的關鍵字了繼續搜尋下一筆,如果要「往上搜尋」的話,可以按下 Shift + F3 或 Shift + Ctrl + I 即可。
以上就是快速搜尋「目前文件」的方式,應該是蠻實用的。
除了這些以外,還有很多「搜尋整個專案」的進階搜尋方式,例如說按下 Ctrl + Shift + F 會開啟 Find in Files (在檔案中尋找) 的視窗,可以過濾特定副檔名去搜尋,在專案檔案很多的時候很實用,例如說我想要找出所有 *.aspx , *.ascx 與 *.master 的檔案中有出現 Check.aspx 字串的地方,就可以透過 Find in Files 過濾特定副檔名, 你可以在 Look at these file types 中輸入多個過濾規則,並用分號 ( ; ) 分隔即可,如下圖示:
找到之後,就可以在搜尋結果視窗用滑鼠雙擊(Double Click)搜尋的結果行,檔案就會自動開啟並將游標直接定位到你搜尋到的那個字串前面!
也可以在搜尋結果視窗選取多行,然後按下 Enter 鍵就會自動將你選取的所有檔案自動開啟,並將游標直接定位到你搜尋到的那個字串前面,這樣一來可以很方便的快速編輯搜尋到的文字。