0

フォームからの Web アドレス入力を受け入れていますが、一部の URL は次のように正しくフォーマットされていません (質問しないでください)。

http:/www.foo.com
ftp:/ftp.bar.com
scp:/meh.foobar.com

私がやりたいのは、スラッシュが 1 つだけ存在するかどうかを検出し、2 つ目のスラッシュを追加することです。

私は正規表現が得意ではなかったので、substr と parse_url を組み合わせてスキームを選択し、削除してみました。しかし、それは少し混乱しており、有効な URL がスキームに /// のトリプルを追加し、場合によってはホスト名から文字を削除していました。

助けてください :)

4

1 に答える 1

1

次の正規表現を使用します。'.*:/[a-zA-Z].*'

次のものと一致します。

http:/www.foo.com
ftp:/ftp.bar.com
scp:/meh.foobar.com

次のものとは一致しません:

http://www.foo.com
ftp://ftp.bar.com
scp://meh.foobar.com

次に、replace を使用して無効な文字を置き換えます (使用している言語がわかりません):

url = myUrl.replace(url,':/','://')
于 2012-07-08T07:28:23.743 に答える