我有一个场景,我从一个文件夹中获取文件以进行数据加载,该文件夹的命名约定为 . 顾客_。.txt。但我也想让这个表达式不区分大小写,所以如果有任何名为 CUSTOMER_1234 的文件出现。它也会接受并相应地处理
问问题
1562 次
1 回答
1
试试下面的正则表达式:
(?i)customer(?-i).*\.txt
在“获取文件”步骤或您正在使用的任何其他正则表达式步骤的通配符部分。这将过滤掉以“客户”或“客户”开头的文件。
在此处附上示例代码。
希望这可以帮助 :)
示例截图:
根据以下评论修改我之前的答案:
如果您希望匹配模式“customer_”而不考虑大小写,首先您可以使用 Javascript 的“匹配”函数轻松完成。您只需要以大写形式传递文件名并与大写模式匹配。这将很容易地为您获取结果。检查下面的 JS 片段:
var pattern="customer_"; //pattern is the word pattern you want to match
var match_files= upper(files).match(upper(pattern)); // files in the list of files you are getting from the directory
if(upper(match_files)==upper(pattern)){
//set one flag as 'match'
}
else{
// set the flag as 'not match'
}
但如果您只需要使用正则表达式。然后你可以试试下面的正则表达式:
.*(?i)(customer|CUSTOMER).*(?-i)\.txt
这也适用于“_123_Customer_1vasd.txt”模式。
希望这可以帮助 :)
于 2015-01-26T13:02:26.823 回答