0

正規表現を作成する方法がわかりませんが、使用しているプログラムの1つでローカルホストのURLを有効にする必要があります。これは、プログラムがURLを検証するために使用する正規表現です。

preg_match ( '/^https?:\/\/(([a-z0-9-]+\.)+[a-z]{2,6}|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})(:[0-9]+)?(\/?|\/\S+)$/iu', $url )

私のローカルウェブサイトのルートURLはhttp://localhost/、検証する方法は?

4

3 に答える 3

4

すでにIPv4アドレスのオプションがあるようですので、の別のオプションですlocalhost

チェーンの後\d{1,3}、の直前に、)を追加し|localhostます。

于 2012-08-03T22:47:02.453 に答える
4

パターンの先頭にオプションとしてlocalhostを追加するだけなので、パターンの先頭は次のようになります。

preg_match('/^https?:\/\/(localhost|([a-z0-9-]+\.)+[a-z]{2,6} (the rest as before)
于 2012-08-03T22:47:05.943 に答える
2

正規表現はいくつかの部分に分割できます:

https?://
(
    ([a-z0-9-]+\.)+[a-z]{2,6}
    |\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}
)
(:[0-9]+)?
(/?|/\S+)

有効なURLのセットにローカルホストを追加するにlocalhost|は、プロトコルの後に両方の開き角かっこを追加するだけです。

于 2012-08-03T22:49:17.360 に答える