matchs方法未返回true

时间:2019-05-09 07:00:48

标签: java regex

package com.wynd.service.response;

import java.util.regex.Pattern;

public class Test {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        String a = "http://localhost:8001/eWS/sales/users/C12562/sites";
        System.out.println(a.matches("([/sales/users/][0-9A-Za-z][/sites])"));  
    }
}

我需要match方法应该返回true。什么是正则表达式。请帮忙。

1 个答案:

答案 0 :(得分:0)

将内容放在方括号中时,表示您正在方括号中定义的范围内搜索单个字符。

您的字符串与以下内容匹配:.*/sales/users/[0-9A-Za-z]+/sites 对于非Java字符串,匹配的“ /”需要我以“ \”转义。

参考文献:

[a-zA-Z]-匹配a-z或A-Z之间的任何字符。您可以随意组合。

.-匹配除换行符以外的任何字符(或在/ s标志中包括换行符)

a*-匹配零个或多个连续的a字符(在这种情况下。)