The FTP source type does not support this type of filtering. You'll need a custom script for the receiver using QIE FTP functions to filter out the file names.
Here is a sample script for plain ftp:
var host = 'localhost';
var port = '21';
var username = 'qie';
var password = 'qie';
var files = qie.listFTPEndpointNoEncryption(host, port, '\\', true, true, '', username, password);
qie.debug('files: ' + files.length);
for (var i = 0; i < files.length; i++) {
qie.debug('fileName: ' + files[i]);
if (StringUtils.containsIgnoreCase(files[i], 'patient') && !StringUtils.containsIgnoreCase(files[i], 'inpatient')) {
var file = qie.readFTPFileNoEncryption(host, port, '\\'+files[i], true, '', true, true, '', username, password, 120000);
qie.debug('file: ' + file);
qie.addInboundMessage(qie.base64Decode(file.getNode('/ftpFile/encodedBytes')), file.getNode('/ftpFile/fileName'));
}
}