嘿,我正在尝试将旧网址映射到新网址。喜欢-
/oldapp/viewReview.do?action=show_references&bugId=xy12&queueName=OLLD-CodeReviews
至-newapp/review/reference?bugId=xy12&queueName=OLLD-CodeReviews
我如何使用模式和匹配器来匹配模式并从URL中提取bugId和queueName。请帮忙。
[任何字符后跟?
或&
,后跟标识符=
和不能包含&
作为组的值,然后是任何尾随字符:
Pattern bugidp = Pattern.compile(".*[?&]bugId=([^&]+).*");
Pattern queuep = Pattern.compile(".*[?&]queueName=([^&]+).*");
Matcher bugidm = bugidp.matcher(url);
Matcher queuem = queuep.matcher(url);
if (bugid.matches() && queuem.matches()) {
String bugid = bugidm.group(1);
String qname = queuem.group(1);
String newrl = String.format("newapp/review/reference?bugId=%s&queueName=%s",
bugid, qname);
} else {
// not found
}