我需要检查网址以确定某些内容。
URL可以有两种类型:
/anything/flows/anything/something.xhtml
/anything/solutions/dev/something.xhtml
编辑
以上是我的应用程序中的两个url模式。我从请求中获取当前URL并尝试根据模式检查它,然后匹配它。如果它匹配模式,那么我需要设置一些变量。
截至目前,我一直在使用这样的模式来检查第二种类型的网址
public static final Pattern CHECK_PATTERN = Pattern.compile("/([^)]+)/solutions/(dev|code)/([^)]+)");
为了检查第一个模式,我曾经拆分URL并使用.contains
来检查URL是否包含“流量”,然后相应地执行必要的步骤。
我一直在寻找一个正则表达式,可用于检查这两种类型的URL,从而减少if条件。 条件正则表达式如何帮助实现这一目标?
答案 0 :(得分:0)
请查看此正则表达式,了解您提到的案例
/anything/((flows/[a-zA-Z]+)|(solutions/dev))/[a-zA-z]+.xhtml
它应该工作正常。