web-dev-qa-db-ja.com

URLで有効な文字は何ですか?

可能性のある複製:
どの文字がURLを無効にしますか?

大きな文字列のURL以外の部分を削除しようとしています。私が見つけた正規表現のほとんどは[A-Za-z0-9-_.!~*'()]に似ていますが、URLに含めることができるものは他にもあります。好む http://127.0.0.1:8080/test?v=123#this 例えば

それでは、有効なURLの最新の文字は何ですか?

51
blez

すべての厄介な詳細は、トピックに関する現在のRFCで見つけることができます: RFC 3986(Uniform Resource Identifier(URI):Generic Syntax)

この関連する答え に基づいて、次のようなリストを見ています:A-Za-z0-9-._~:/?#[]@!$&'()*+,;%、および=。他のすべては rl-encoded でなければなりません。また、これらの文字の一部は、URIの非常に特定の場所にのみ存在でき、それらの場所の外側はURLエンコードする必要があります(たとえば、%%20のようにURLエンコードと組み合わせてのみ使用できます) 、RFCにはこれらの詳細がすべて含まれています。

95
ckittel