Java 正则表达式,匹配不带“的url”;http://quot;以及任何其他/&引用;

Java 正则表达式,匹配不带“的url”;http://quot;以及任何其他/&引用;,java,regex,url,expression,Java,Regex,Url,Expression,我四处看了一会儿,但也许我不能用合适的关键词“谷歌”。。所以我在这里。 我需要首先匹配一个url剥离协议/ Target:将第一个子字符串从http://匹配到first/(可能是last/不存在)或匹配到结尾 这里出现了一个问题: 我写了这个正则表达式 (?)? (Java使用双反斜杠) 似乎适用于所有示例,包括一个简单的www.google.com类似于 ^(https?:\/\/)?([0-9a-zA-Z][-\w]*[0-9a-zA-Z\.)+[a-zA-Z]{2,6})\/ 我在我的

我四处看了一会儿,但也许我不能用合适的关键词“谷歌”。。所以我在这里。 我需要首先匹配一个url剥离协议/

Target:将第一个子字符串从http://匹配到first/(可能是last/不存在)或匹配到结尾 这里出现了一个问题:

我写了这个正则表达式

(?)? (Java使用双反斜杠) 似乎适用于所有示例,包括一个简单的
www.google.com

类似于

^(https?:\/\/)?([0-9a-zA-Z][-\w]*[0-9a-zA-Z\.)+[a-zA-Z]{2,6})\/
我在我的一本书中看到了这一点。这应该可以解释一个变量http/https,不允许空白,并且可能会在第一个斜杠处停止


如果我做错了,请发表评论。

这适用于所有示例,但最后一个示例除外:

(?<=//)[^/\\s]+

(?看起来您的答案是正确的,但是您缺少了没有尾随“/”的可能性。请尝试以下操作:

(?<=//)(.*?)(?=/|$)

(?:[a-z][a-z\.\d\-]+)(?:[a-z][a-z\-]+)(?![\w\.])?好吧,我也需要切断http://我最后做了这个((?:[a-z][a-z\.\d\-]+)(?:[a-z][a-z\-]+)(?![\w\.]),不管怎样,我还是想提出建议
(?<=//)(.*?)(?=/|$)