正则表达式:匹配字符串中反斜杠的确切数字出现次数

时间:2017-02-09 13:49:56

标签: regex powershell

我的数据是不同深度文件的路径,例如:

Dir1\Dir2\file1.ext
Dir1\Dir2\Dir3\file2.ext

我想要实现的是过滤那些精确深度级别的路径。现在,我想只有那些深度为2级的路径:

Dir1\Dir2\*

我使用Powershell找到匹配项。我创造的是:

'[0-9a-zA-Z]*\\{1}[0-9a-zA-Z]*\\{1}[0-9a-zA-Z]*'

我认为这是:任何数量的字母和数字,然后是一个反斜杠,再一个字母和数字,一个反斜杠,最后是任意数量的字母和数字。我原以为我会找到里面只有两个反斜杠的字符串,但当我用名字检查它时有三个反斜杠:

PS > "Dir1\Dir2\Dir3\file1.ext" -match '[0-9a-zA-Z]*\\{1}[0-9a-zA-Z]*\\{1}[0-9a-zA-Z]*'

我也得到了积极的配对,我认为这不应该奏效。我的失望有多大。我的错误或误解在哪里?我做错了什么?

0 个答案:

没有答案