Windchill 基礎原理 > Windchill 搜尋 > 搜尋參考 > 搜尋萬用字元
  
搜尋萬用字元
* 
下列主題僅適用於您的「搜尋模式」偏好設定設為「簡單」時。此為預設值。如需有關「進階」模式搜尋的資訊,請參閱進階模式搜尋
萬用字元可以讓您使用不精確或可變搜尋字串擴大搜尋結果。當執行資料庫搜尋時,這尤為有用。
您可以針對需要您輸入文字字串的任何搜尋欄位使用萬用字元。萬用字元可以用於索引與非索引搜尋。
在關鍵字搜尋中加空格及使用多個萬用字元
搭配萬用字元使用逸出字元
萬用字元在索引關鍵字搜尋中的唯一行為


下列萬用字元是可接受的:
* (星號)
星號可取代為零或多個字元。
「名稱」ABC*
結果包含下列物件名稱:
ABC
ABC DEF GHI
ABC–DEF.GHI
「名稱」*ABC
結果包含下列物件名稱:
ABC
123ABC
123 456 ABC
「名稱」*ABC*
結果包含下列物件名稱:
ABC
123ABCDEF
ABCDEF
123ABC
? (問號)
在大多數情況下,問號僅可由屬性值中的一個字元或搜尋所傳回的物件內容取代。
「名稱」12?4
結果包含下列物件名稱:
1234
12A4
「名稱」??345
結果包含下列物件名稱:
12345
AB345
「名稱」ABC 12?*
結果包含下列物件名稱:
ABC 123
ABC 123_45
ABC 123 456
* 
以上範例會輸入到「名稱」欄位中,因此會顯示資料庫搜尋:
關鍵字搜尋在某些情況下可能會有不同的行為,在使用 Windchill Index Search 時尤其如此。如需詳細資訊,請參閱下面的「萬用字元在索引關鍵字搜尋中的唯一行為」一節。


在關鍵字搜尋中加空格及使用多個萬用字元
您可在一個關鍵字或屬性值搜尋中使用多個萬用字元。例如,輸入 p?* d?s* 會傳回名為 "Part Design" 的物件。
但是,如果您針對單一關鍵字字串輸入多個萬用字元搜尋詞彙,則搜尋會失敗。這通常是因為您的關鍵字詞彙之間存在不必要的空格。
* 
當您執行非索引搜尋時,字串之間使用的星號 (*) 亦視為佔空格。
例如,假設有一個名為 "PartDesign ABC-123" 的物件,以及下列關鍵字搜尋:
關鍵字:?a*De*?BC*
索引搜尋 - 成功
非索引搜尋 - 成功
PartDesign ABC-123 會包括在兩種類型關鍵字搜尋的搜尋結果中。
關鍵字:?a*De*?BC*
索引搜尋 - 失敗
非索引搜尋 - 失敗
這兩次搜尋都會失敗,因為使用者在 ?a*De* 之間加上了一個空格。
Windchill 會將 ?a*De* 作為兩個唯一的搜尋參數來處理,而這應該會傳回兩個唯一的字串 (例如,"Part Design")。
但是,"PartDesign" 只是一個單一字串。這會產生衝突,導致搜尋失敗。
關鍵字:?a*De*?BC*
索引搜尋 - 失敗
此搜尋會失敗,因為使用者已移除 ?a*De* ("PartDesign") 與 ?BC* (ABC-123) 之間的空格。執行索引搜尋時,您無法使用萬用字元來表示字串之間的空格。
Windchill Index Search 不會索引空格。空格僅用於將資料分割為不同的關鍵字字串。例如,會將 "PartDesign ABC-123" 作為下列字串索引:
PartDesign
ABC
ABC-
-123
123
此搜尋嘗試在 De*?BC 中使用星號字元來表示 "Design<空格>ABC"。但是,Windchill 無法正確比對 De*?BC 與索引關鍵字字串,因為索引中沒有任何內容可以表示 "Design<空格>ABC" 中的空格。相反,Windchill 會嘗試比對 ?a*De*?BC* 與單一文字字串 (例如 "PartDesignABC-123")。
非索引搜尋 - 成功
Windchill 資料庫搜尋會逐一解譯空格,並因而識別分隔文字字串的空格。例如,"PartDesign ABC-123" 會在 Windchill 搜尋資料庫中儲存為下列字串:
PartDesign<空格>ABC-123
PartDesign
ABC-123
當您針對物件名稱執行非索引搜尋時,您的關鍵字詞彙必須能夠說明值欄位中的每個字元,包括任何空格在內。您可以提供文字關鍵字或使用萬用字元來執行此操作。


搭配萬用字元使用逸出字元
有時候您必須搜尋包含萬用字元的字串。在萬用字元之前輸入反斜線字元 ( \ ) 可將其逸出。
當執行屬性搜尋或非索引關鍵字搜尋時:
在萬用字元之前輸入反斜線 ( \ ) 可在搜尋字串中搜尋文字萬用字元。
例如,欲搜尋包含屬性值 123?456 的物件,您可以輸入 123\?456。否則,搜尋會嘗試尋找問號 (?) 已由其他某些字元 (例如 123X456) 取代的物件。
當在安裝並啟用索引的情況下執行關鍵字搜尋時:
如果當執行索引搜尋時,您在萬用字元之前輸入反斜線 ( \ ),Windchill 會直接略過這兩個字元。因為 Windchill 並不建立萬用字元的索引,因此沒有理由執行包含文字萬用字元的關鍵字搜尋。
例如,123?456 會索引為 123456。因此,如果您輸入 123?456 作為關鍵字,搜尋將無法傳回物件,因為它正在搜尋問號已由其他字元 (例如 123X4561239456) 取代的單一關鍵字字串。
但是,如果您輸入 123\?456 作為搜尋詞彙,搜尋會略過反斜線與問號,然後搜尋 123456。您的搜尋結果會包含 123?456,但也會包含將 123456 作為索引關鍵字的其他任何物件。如需詳細資訊,請參閱關鍵字中的特殊字元


萬用字元在索引關鍵字搜尋中的唯一行為
基本上有兩種索引 Windchill 搜尋:關鍵字搜尋資料庫搜尋。如需詳細資訊,請參閱關鍵字搜尋規則
只有在已安裝及啟用 Windchill Index Search,且您正在執行關鍵字搜尋 (使用「關鍵字」欄位的全域搜尋或進階搜尋) 時,才適用於下列規則:
關鍵字變數
索引搜尋行為
起首星號 (*)
「關鍵字」欄位或全域搜尋中的起首星號 (*) 會將搜尋限制在索引檔案內容與對應的屬性值 (依預設為「名稱」「編號」) 中。若無起首星號,則會對照所有屬性欄位比較關鍵字。
例如,如果您輸入 nitin* 作為索引搜尋的關鍵字,結果會包含下列內容:
名稱或編號中包含 "Nitin",或 "Nitin" 後跟一或多個字元 (例如 "NitinDesign") 的物件。
內容檔案中包含 "Nitin",或 "Nitin" 後跟一或多個字元 (例如 "Nitin0123") 的物件。
由名為 "Nitin" 的使用者建立或修改的物件。(或者可能包含 "Nitin",或 "Nitin" 後跟一或多個字元的其他任何屬性值。)
但如果您輸入 *nitin,搜尋會傳回:
名稱或編號中包含 "Nitin",或 "Nitin" 前面有一或多個字元 (例如 "01Nitin") 的物件。
內容檔案包含 "Nitin" 一字的物件。
* 
當搜尋內容時,會略過起首萬用字元。例如,如果您針對 *ite* 執行關鍵字搜尋,則會傳回內容檔案中包含例如 "item" 與 "iteration" 等詞彙的物件。但是,會略過內容檔案中包含例如 "white" 或 "criteria" 等詞彙的物件。
如需詳細資訊,請參閱進階搜尋使用案例情境使用萬用字元的關鍵字搜尋
起首或結尾問號 (?)
位於關鍵字搜尋字串開頭或結尾的問號 (?) 可由零或一個字元取代。
例如,如果您搜尋 specification?,結果會包含 "specification"、"specifications" 與 "SpecificationA"。
同樣地,?end 會傳回 "end"、"bend" 與 "send"。
* 
此行為對於索引搜尋具有唯一性,因為在資料庫搜尋中,問號不可由零個字元所取代。
空格
當在單一關鍵字搜尋中使用時,萬用字元不可取代多個字串之間的空格。
例如,搜尋 product*specification 會成功傳回下列結果:
product001specification
product_specification
ProductSpecification
但是,這無法傳回下列結果:
Product Specification
Product001 Specification
Product%%Specification
* 
Windchill Index Search 會將某些特殊字元視為空格。例如,名為 "Product%%Specification" 的物件會索引為兩個字串:"product" 與 "specification"。因此,使用關鍵字 product*specification 搜尋此物件會失敗。
如需詳細資訊,請參閱關鍵字中的特殊字元