Option Compare 陳述式
宣告比較字串資料時要使用的預設比較方法。
語法
Option Compare { Binary | Text }
組件
詞彙 | 定義 |
---|---|
Binary |
選擇性。 導致根據從字元之內部二進位表示衍生的排序次序進行字串比較。 如果字串可以包含不會解譯為文字的字元,這種比較就特別有用。 在此情況下,您不想要因字母順序等價 (例如不區分大小寫) 而使比較有所偏差。 |
Text |
選擇性。 導致根據系統地區設定決定之不區分大小寫的文字排序次序進行字串比較。 如果您的字串全部包含文字字元,而且您想要將字母順序等價 (例如不區分大小寫和緊密相關的字母) 列入考量,這種比較就很有用。 例如,您可能想要將 A 和 a 視為相等,並將 Ä 和 ä 視為優先於 B 和 b 。 |
備註
如有使用,則 Option Compare
陳述式必須先於任何其他原始程式碼陳述式出現在檔案中。
Option Compare
陳述式會指定字串比較方法 (Binary
或 Text
)。 預設文字比較方法為 Binary
。
Binary
比較會比較每個字串中每個字元的數值 Unicode 值。 Text
比較會根據目前文化特性 (Culture) 中的語彙意義來比較每個 Unicode 字元。
在 Microsoft Windows 中,排序次序是由字碼頁決定。 如需詳細資訊,請參閱字碼頁。
在下列範例中,英文/歐語系字碼頁 (ANSI 1252) 中的字元是使用 Option Compare Binary
來排序,這會產生一般的二進位排序順序。
A < B < E < Z < a < b < e < z < À < Ê < Ø < à < ê < ø
使用 Option Compare Text
排序相同字碼頁中的相同字元時,會產生下列的文字排序順序。
(A=a) < (À = à) < (B=b) < (E=e) < (Ê = ê) < (Z=z) < (Ø = ø)
Option Compare 陳述式不存在時
如果原始程式碼不包含 Option Compare
陳述式,即使用專案設計工具、編譯頁 (Visual Basic) 上的 [Option Compare] 設定。 如果您使用命令列編譯器,則會使用 -optioncompare 編譯器選項所指定的設定。
注意
在下列指示的某些 Visual Studio 使用者介面項目中,您的電腦可能會顯示不同的名稱或位置: 您所擁有的 Visual Studio 版本以及使用的設定會決定這些項目。 如需詳細資訊,請參閱將 Visual Studio IDE 個人化。
在 IDE 中設定選項比較
在方案總管中選取專案。 按一下 [專案] 功能表上的 [屬性]。
按一下 [編譯] 索引標籤。
在 [Option Compare] 方塊中設定值。
當您建立專案時,[編譯] 索引標籤上的 [Option Compare] 設定會設定為 [選項] 對話方塊中的 [Option Compare] 設定。 若要變更此設定,請在 [工具] 功能表上按一下 [選項]。 在 [選項] 對話方塊中,展開 [專案和方案],然後按一下 [VB 預設值]。 [VB 預設值] 中的初始預設設定為 [Binary]。
在命令列上設定選項比較
- 在 vbc 命令中包含 -optioncompare 編譯器選項。
範例 1
下列範例會使用 Option Compare
陳述式來將二進位比較設為預設字串比較方法。 若要使用這段程式碼,請取消註解 Option Compare Binary
陳述式,並將其放置在原始程式檔的頂端。
' Option Compare Binary
Console.WriteLine("A" < "a")
' Output: True
範例 2
下列範例會使用 Option Compare
陳述式,將不區分大小寫文字排序順序設定為預設字串比較方法。 若要使用這段程式碼,請取消註解 Option Compare Text
陳述式,並將其放置在原始程式檔的頂端。
' Option Compare Text
Console.WriteLine("A" = "a")
' Output: True