﻿# 在 Visual Studio 中搜尋文字的多種選擇

在 Visual Studio 中搜尋文字有許多選擇，今天介紹許多好用的搜尋技巧。

第一種大家耳熟能詳的，就是用 Ctrl + F 立即開始搜尋 ( Quick Find )，你可以選擇「目前文件(Current Document)」、「所有開啟的文件(All Open Documents)」、「目前專案(Current Project)」或「整個方案(Entire Solution)」，如下圖：

    ![](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/1f115fdcc10e8a3e8790-Screenshot-080328-201754.png)

我個人在專案開發上雖然對這個功能很依賴，但有時後也蠻討厭的，因為每次都會跳出一個 Find and Replace 的視窗讓我選，大部分的時候我只是要搜尋目前文件的文字而已，沒必要每次都選擇這麼多選項，且你上一次搜尋 Current Project 的話，這次想搜尋 Current Document 就要重選一次 Look in 欄位，我自己是覺得蠻麻煩的。

第二種很特別，就是按下 Ctrl + / 快速鍵可以進入 command line 視窗， 直接輸入要查詢的文字後按下 Enter 就可以搜尋了，也可以連續按 Enter 搜尋下一筆，也可以按下 Shift + Enter 往上搜尋，真的很方便喔！

    ![按下 Ctrl + / 快速鍵可以進入 command line 視窗](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/17c9e47e04a81963c945-Screenshot-080328-203517.png "按下 Ctrl + / 快速鍵可以進入 command line 視窗")

除此之外，還可以利用 command line 視窗執行一些常見的 Macro 指令，你只要按下 Ctrl + / 之後先輸入一個大於符號 ( > ) 就可以輸入或選擇巨集了，像我最常用的指令有兩個：

> \>op           開啟專案
> 
> \>of            開啟檔案

你如果有自訂的巨集(Macro)也可以用這種方式快速啟動！

第三種搜尋方式也是我蠻常用的，叫做 "遞增搜尋 (Incremental Search)"，快速鍵是 Ctrl + I ，按下去之後畫面的正中央匯出線一個「望遠鏡」的圖示，如下圖示：

    ![遞增搜尋 ( Incremental Search )](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/fe4e05ef9c753d26db9b-Screenshot-080328-221155.png "遞增搜尋 ( Incremental Search )")

出現之後就可以直接輸入關鍵字，打幾個字他就搜尋幾的字，只要有找到就會跳到那個地方去，直到按下 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 中輸入多個過濾規則，並用分號 ( ; ) 分隔即可，如下圖示：

    ![](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/7dd06dc786c152937b6e-Screenshot-080328-223340.png)

找到之後，就可以在搜尋結果視窗用滑鼠雙擊(Double Click)搜尋的結果行，檔案就會自動開啟並將游標直接定位到你搜尋到的那個字串前面！

    ![可以在搜尋結果視窗用滑鼠雙擊(Double Click)搜尋的結果行，檔案就會自動開啟並將游標直接定位到你搜尋到的那個字串前面](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/86f4756176c4fddfd45a-Screenshot-080328-223641.png "可以在搜尋結果視窗用滑鼠雙擊(Double Click)搜尋的結果行，檔案就會自動開啟並將游標直接定位到你搜尋到的那個字串前面")

也可以在搜尋結果視窗選取多行，然後按下 Enter 鍵就會自動將你選取的所有檔案自動開啟，並將游標直接定位到你搜尋到的那個字串前面，這樣一來可以很方便的快速編輯搜尋到的文字。

    ![也可以在搜尋結果視窗選取多行，然後按下 Enter 鍵就會自動將你選取的所有檔案自動開啟，並將游標直接定位到你搜尋到的那個字串前面，這樣一來可以很方便的快速編輯搜尋到的文字](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/42768fd86b74abd56e42-Screenshot-080328-224037.png "也可以在搜尋結果視窗選取多行，然後按下 Enter 鍵就會自動將你選取的所有檔案自動開啟，並將游標直接定位到你搜尋到的那個字串前面，這樣一來可以很方便的快速編輯搜尋到的文字")
