gpt4 book ai didi

java - URL 的正则表达式模式匹配

转载 作者:行者123 更新时间:2023-11-30 06:19:19 25 4
gpt4 key购买 nike

我有一个方法,它的输入是一个 URL 字符串。我会使用不同类型的 URL(示例 5 个我在下面提到的 URL)

String url1 = "http://domainName/contentid/controller_hscc.jsp?q=1" ;
String url2 = "http://domainName/contentid/controller.jsp?waitage=1" ;
String url3 = "http://domainName/contentid/controller_runner.jsp" ;
String url4 = "http://domainName/contentid/jump.jsp?q=5" ;
String url5 = "http://domainName/contentid/jump.jsp" ;

我需要查找此 URL 中是否包含 controller*.jsp 模式。如果是这样,我将不得不为它编写一些其他逻辑。

现在,我需要知道如何在 java 中编写 * controller*.jsp 模式

我用这种方式写了一个正则表达式,它总是返回 false

boolean retVal = Pattern.matches("^(controller)*", url) ;

PS:我用的是JDK1.4

EDIT-1

我试过下面的方法。还没睡

import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class HelloWorld{

public static void main(String []args){
String url = "http://domainName/contentid/controller_hscc.jsp?q=1" ;
//String url = "baaaaab" ;
String regex = "/controller(\\w+)?\\.jsp*" ;

Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(url);
System.out.println(m.matches());
}
}

最佳答案

将其与以下正则表达式匹配:

controller(\w+)?\.jsp

Demo

关于java - URL 的正则表达式模式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23288039/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com