正则表达式与Java中的URL匹配的转义序列无效

正则表达式与Java中的URL匹配的转义序列无效,java,regex,Java,Regex,我尝试编写正则表达式来匹配Java中的URL。我在互联网上找到了正则表达式,它在在线正则表达式编辑器中运行良好。 当我试图在eclipse上运行它时,它给出了以下错误:无效的转义序列(有效的转义序列是\b\t\n\f\r\“\”) 我怎样才能解决这个问题 提前感谢。请注意,在Java字符串中,必须转义反斜杠(即\将导致字符串文本“\\”)。因此表达式应如下所示: String expression = "(http|https):\\/\\/(\\w+:{0,1}\\w*@)?(\\S+)(:[

我尝试编写正则表达式来匹配Java中的URL。我在互联网上找到了正则表达式,它在在线正则表达式编辑器中运行良好。 当我试图在eclipse上运行它时,它给出了以下错误:无效的转义序列(有效的转义序列是\b\t\n\f\r\“\”)

我怎样才能解决这个问题


提前感谢。

请注意,在Java字符串中,必须转义反斜杠(即
\
将导致字符串文本
“\\”
)。因此表达式应如下所示:

String expression = "(http|https):\\/\\/(\\w+:{0,1}\\w*@)?(\\S+)(:[0-9]+)?(\\/|\\/([\\w#!:.?+=&%@!\\-\\/]))?";

请注意,在Java字符串中,必须转义反斜杠(即,
\
将导致字符串文本
“\\”
)。因此表达式应如下所示:

String expression = "(http|https):\\/\\/(\\w+:{0,1}\\w*@)?(\\S+)(:[0-9]+)?(\\/|\\/([\\w#!:.?+=&%@!\\-\\/]))?";