如何使用正则表达式匹配正斜杠

时间:2016-10-14 08:32:38

标签: java regex

如何使用正则表达式检测路径中的正斜杠。还有数字

实施例 String str =" / urpath / 23243 / imagepath / 344_licensecode /" 我想使用正则表达式来确保路径与正斜杠的数字匹配。 格式匹配必须像这样" / 23243 /"

任何想法的人?

由于

2 个答案:

答案 0 :(得分:5)

您需要使用/转义特殊字符\。但是,\也是Java使用的转义字符,但是您希望将符号本身传递给Regex,因此它可以为Regex转义。您可以通过使用\\转义转义符号来实现此目的。所以总的来说,斜杠会有\\/

使用此代码段:

String input = ...
Pattern pattern = Pattern.compile("\\/23243\\/");
Matcher matcher = pattern.match(input);
if (matcher.find()) {
    System.out.println("Does match!");
} else {
    System.out.println("Does not match!");
}

您可以在 regex101 尝试正则表达式:regex101/RkheRs

答案 1 :(得分:0)

我找到了答案。谢谢Mgaert

List<String> listArray = new ArrayList<String>();
listArray.add(file.getCanonicalPath());

// Regular expression in Java to check if String is number or not
Pattern pattern = Pattern.compile("/\\d+/");
for (String path: listArray) {
    // Match patter for numbers path
    Matcher matcher = pattern.matcher(path);
    if (matcher.find()) {
        System.out.println("Does match!"+ path);
    } else {
        System.out.println("Does Not match!");
    }
}