我正在尝试使用正则表达式但不能这样做。这是正则表达式模式:
/(?:^(http:\/\/|https:\/\/|\/\/)((?:[\w.:-]+)(?:(?:[\/]+)(?!acl-)|["\'])(?:[^\s"\'}\]]*)))/mi
请帮帮我。我非常感谢你。
答案 0 :(得分:2)
/(?:^(http:\/\/|https:\/\/|\/\/)((?:[\w.:-]+)(?:(?:[\/]+)(?!acl-)|["\'])(?:[^\s"\'}\]]*)))/mi
以上的等效Java正则表达式是
"(?m)(?i)(?:^(http://|https://|//)((?:[\\w.:-]+)(?:/+(?!acl-)|[\"'])(?:[^\\s\"'}\\]]*)))"
(?m)
称为多行修饰符,(?i)
称为不区分大小写的修饰符。你不需要逃避正斜杠和单引号,但你必须逃避双引号。您还可以将上述修饰符组合为(?mi)
或(?im)
,(http://|https://|//)
可以写为((?:https?:)?//)