我是 Java 和正则表达式的新手。我一直在看下面的这个正则表达式,似乎不明白。这只是为了获取会话密钥,希望有人可以向我解释。
这是网址
URL: http://somewebsite.com/signin?SessionKey=HDGshCWo3J0000000ED6
这是代码
String sessionKey = url.replaceAll("^.*SessionKey=([^&]*).*$", "$1");
System.out.println(sessionKey);
结果
HDGshCWo3J0000000ED6
我的问题如下对于正则表达式
^.*SessionKey=([^&]*).*$
- 的目的是什么。(任何字符)和 *(匹配 0 次或多次)在 ^ 之后
- 为什么不直接使用 ^SessionKey=
- ([^&]*) - 为什么在这里使用分组,什么是&?
- .*$ - 为什么使用 . 和 * 在行尾之前?
用于更换
- 1 美元 - 1 美元是什么?
谢谢。