【发布时间】:2020-12-02 05:59:14
【问题描述】:
我有 2 个变量:
Dim filename as string = "Test2020.csv"
Dim fileSearch as string = "Test*.csv"
文件名是文件名,文件搜索是用来查找文件的模式。
我需要检查文件名是否与模式匹配。
我打算这样做的方法是获取 *: "Test" 之前的每个字符串以及 *: ".csv" 之后的所有内容,并检查文件名是否以这些开头和结尾。有没有一种更简单的方法来查找一个字符串模式是否与另一个匹配。
请注意,我正在比较 2 个字符串,而不是尝试在目录中查找文件。
【问题讨论】:
-
你可以使用正则表达式,还是采用给定的模式,然后转换为正则表达式,然后使用?
-
能否告诉我正则表达式模式是什么。我对正则表达式的了解很少。我以前使用过正则表达式,但它是为了删除空格。
-
如果
fileSearch是用于查找filename的模式,为什么您认为文件名不匹配(因为它已经匹配)?您是否遗漏了一些细节? -
@Jimi 是的,文件名变量可以在发现时更新。我坚持使用列表文件模式和一个文件名。我需要找到它属于哪个文件模式。这是一个现有的公司应用程序,所以我只能更改多少,
-
试试:
System.Text.RegularExpressions.Regex.IsMatch(filename, "(?<=)Test\d{4}.csv", System.Text.RegularExpressions.RegexOptions.IgnoreCase)