統合の警告:検索条件に未解決の名前が含まれているため、変換を適用できません
症状
統合機能で検索アクションの1つを使用し、検索方法に正規表現を使った場合、ログに次のような警告が表示されます。
環境
BarTender 2019以降の統合機能
対処方法/回答
BarTenderでは、統合機能内で変数を表すのに%記号を使用します。コマンドスクリプトでは%BTW%と%END%の2つが使われています。正規表現(regex)内に%が2つ含まれていると、BarTenderはその間の文字列を変数として認識し、次のような警告が表示されることがあります:「変換を適用できません。検索条件に未解決の名前が1つ以上含まれています。」
ワイルドカードの使用
可能であれば、%記号を2つ使うのは避けてください。どうしても%記号を2つ使う必要がある場合は、代わりにドット(.)のワイルドカード文字を使うことができます。
上記の警告メッセージにあるスクリプトでは、%記号を1つ削除することで、正規表現が正しく動作します:
(%BTW[\s\S]*\/AF=")|(" \/PRN[\s\S]*)
別の例として、次のような表現がある場合:
(%BTW[\s\S]*END%)\u000D\u000A
BarTenderは、この2つの%記号の間を変数名とみなしますが、この場合は不正な変数名となるため、警告が表示されます。
この正規表現を修正するには、ドットのワイルドカードを使ってください:
(.BTW[\s\S]*END.)\u000D\u000A
BarTenderに変数を使わせない方法
最も簡単な方法は、アクションの「変数」チェックボックスのチェックを外すことです: