正则表达式使用java从URL中删除jsessionid

Ram*_*esh 3 java

我需要从给定的URL中删除jsessionid.例如,jessionid不在查询部分,我有URL之类的

http://example.com/index.do;jsessionid=XXXXXXXXXXXXXXX?username=example
Run Code Online (Sandbox Code Playgroud)

Boh*_*ian 9

试试这个:

url = url.replaceAll(";jsessionid=[^?]*", "");
Run Code Online (Sandbox Code Playgroud)

无论您的网址是否包含任何参数,这都会有效,例如,它适用于以下两种情况:

  • http://example.com/index.do;jsessionid=XXXXXXXXXXXXXXX
  • http://example.com/index.do;jsessionid=XXXXXXXXXXXXXXX?username=example

它使用正则表达式"向前看"来捕获(但不包括)?输入的一个或结束.