為什麼Match Pattern在有特殊符號的情況下無法運作?
主要軟體:
主要軟體版本: 1.0
主要軟體修正版本: N/A
次要軟體: N/A
問題: 我有一個字串包含特殊符號,例如'.'。如果我使用match pattern函式的字串包含這符號,他只會抓到第一個字元,然後回傳剩下的字串。例如我使用'hello.txt'來做'.'的pattern match,他會回傳'h'和'ello.txt'。但我希望他回傳'hello'和'txt'。
解答: Match Pattern VI支援一般字元來做pattern match, '.'屬於特殊符號。如果要用'.'來做pattern match,您必須要在前面加上\,像是這樣 '\.' :
同樣的,如果想要搜尋任何特殊字元,您都必須要在前面加上'\'。
被視為特殊符號的字元如下:
".", "?", "\", "^", "[", "]", "+", "*", "$", "-", "~".
注意: 這個問題也會出現在使用16進制的字串。如果搜尋的子字串是兩個十六進制的字串,並且是以上特殊符號的ACSII值,會出現同樣的問題。然而,只要在字傳前面加上'\'就可以解決此問題。
相關連結: MSDN VBScript User's Guide: Introduction to Regular Expressions
附加檔案:
報告日期: 04/09/2003
最後更新: 08/21/2015
文件偏號: 2W8D5VDS
Other Support Options
Ask the NI Community
Collaborate with other users in our discussion forums
Request Support from an Engineer
A valid service agreement may be required, and support options vary by country.