我正在尝试检测您的内部字符串是否来自http请求的 header ,为此我正在检测两个换行符(根据标准):
String bufferRequest = socketServer.getBufferPart();
Pattern regexHTTP = Pattern.compile("((.+\\n)+\\n)");
Matcher regexMatcherHTTP = regexHTTP.matcher(bufferRequest);
if (regexMatcherHTTP.find()) {
String requestHeader = regexMatcherHTTP.group(1);
// ...
请求缓冲区示例:
GET / HTTP/1.1
abc: def
ghi: jkl
body part 1 ...
body part 2 ...
body etc ...
需要从“GET/”获取到“jkl”,但他没有检测到我,我做错了什么?
在 regexr.com 中工作正常:http://regexr.com/3ekjm
最佳答案
我的解决方案:
Pattern regexHTTP = Pattern.compile("((.+(\\r\\n|\\n))+(\\r\\n|\\n))");
关于java - 我无法分离 HTTP 正文 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40541484/