リストにリストからのstrが含まれている場合に実行すると、問題が発生します。間違ったリストで返されます。別のリストからstrを含むファイルのリストを取得したいのですが、戻り値が空です。 私は何を間違えましたか? 誰かがアドバイスできますか? 以下は私のスクリプトです。
filelist = Files In Directory( path );
//filelist={"123_123_1_acdr.csv", "234_113_100_rqtfgy.csv", "53_1243_12_qqwed.csv", "6_12378_23_rty.csv"}
lst1 = {"234_113_100", "53_1243_12"};
lst2 = {};
For( i = 1, i <= N Items( filelist ), i++,
If( Contains( lst1, filelist[i] ),
Insert Into( lst2, filelist[i] )
)
);
Print( lst2 );
lst2の期待される出力={"234_113_100_rqtfgy.csv"、 "53_1243_12_qqwed.csv"}ただし、出力lst2は空です。
スクリプティングRe:リストにリストからのstrが含まれている場合に実行するときに問題が発生します:間違ったリストで返されます包含がリストの検索に使用される場合、完全一致のみが検索されます。文字列を検索すると、部分的に一致するかどうかを確認できます。
//filelist = Files In Directory( path );
filelist = {"123_123_1_acdr.csv", "234_113_100_rqtfgy.csv", "53_1243_12_qqwed.csv",
"6_12378_23_rty.csv"};
lst1 = {"234_113_100", "53_1243_12"};
lst2 = {};
For( i = 1, i <= N Items( filelist ), i++,
For( k = 1, k <= N Items( lst1 ), k++,
If( Contains( filelist[i], lst1[k] ),
Insert Into( lst2, filelist[i] )
)
)
);
Print( lst2 );