2012-05-23 2 views
3

Мне нужно удалить JSESSIONID из данного URL .The jessionid не в запросе часть , например, у меня есть URL, какРегулярное выражение для удаления JSESSIONID из URL с помощью Java

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

Вы пробовали что-нибудь? Вы новичок в регулярном выражении? – keyser

+0

да я следовал за этим вопросом http://stackoverflow.com/questions/163360/regular-expresion-to-match-urls-java – Ramesh

+0

Эта тема излишняя для ваших целей. – keyser

ответ

8

Попробуйте это:

url = url.replaceAll(";jsessionid=[^?]*", ""); 

Это будет работать, имеет ли ваш URL какие-либо параметры, например, он будет работать для обоих из них:

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

Он использует регулярное выражение «смотреть вперед», чтобы захватить до (но не включая) либо ? или конец ввода.

+0

Может быть, более простая версия типа «; jsessionid = [0-9A-Za-z] *» должна быть достаточной? –

+0

@ morellet.d на самом деле это может быть еще проще: 'url = url.replaceAll ("; jsessionid = [^?] * "," ");' – Bohemian

Смежные вопросы