Я пытаюсь проверить, находится ли файл в указанном каталоге, сравнивая его пути. Я пытался использовать String.matches (), list.contains () и String.indexOf (), но ни один из них, кажется, не работает. Я подозреваю, что это как-то связано с символом косой черты, поскольку на обычных строках это работает, но я также пытался избежать этого, и он тоже не работал.
Вот что я делаю:
String filePath = "(/path/to/my/file/file.f,37|8):"
String dirPath1 = "/to/my/file/"
String dirPath2 = "/to/"
String dirPath3 = "/to/my/other/file"
println(filePath.contains(dirpath1)
println(filePath.contains(dirpath2)
println(filePath.contains(dirpath3)
Но выводит
False
False
False
То же самое происходит с filePath.matches(".*"+dirPath1+".*")
и filePath.indexOf(dirPath1)
, которые выводят -1
Есть ли другой способ сделать это или я делаю что-то не так?
Кроме того, я запускаю это в плагине Jenkins Extended Email Publisher в качестве предварительного сценария.