整合警告:無法套用轉換,因搜尋條件包含一個或多個未解析的名稱
症狀
當您在整合中使用其中一個搜尋動作,並選擇正則表達式作為搜尋方式時,您會在日誌中看到以下警告:
適用環境
BarTender 2019 及之後版本的整合
解決方法/說明
BarTender 在整合中使用 % 來表示變數。指令腳本中有兩個這樣的變數,分別是 %BTW% 和 %END%。如果您的正則表達式(regex)中包含兩個 %,BarTender 會將這兩個 % 之間的內容視為變數,並可能出現警告:「無法套用轉換,因為搜尋條件包含一個或多個未解決的名稱。」
使用萬用字元
如果可以,請盡量避免同時使用兩個 %。如果您必須使用兩個 % 符號,可以用點號(.)萬用字元來取代 %。
針對上方警告訊息中的腳本,您可以移除其中一個 % 符號,這樣正則表達式就能正常運作:
(%BTW[\s\S]*\/AF=")|(" \/PRN[\s\S]*)
另一個例子,如果您的表達式像這樣:
(%BTW[\s\S]*END%)\u000D\u000A
BarTender 會認為這兩個 % 之間的內容是變數名稱,而這樣的名稱是不合法的,因此會出現警告。
要修正這個正則表達式,您可以使用點號萬用字元:
(.BTW[\s\S]*END.)\u000D\u000A
告訴 BarTender 不要使用變數
最簡單的方法是在動作中取消勾選「變數」選項: