我正在尝试删除大字符串的非URL部分。我发现的大多数正则表达式都是[A-Za-z0-9-_.!~*'()]
,但是网址中包含的内容更多。例如http://127.0.0.1:8080/test?v=123#this
那么有效网址的最新字符是什么?
答案 0 :(得分:90)
所有血腥细节都可以在当前关于主题的RFC中找到:RFC 3986 (Uniform Resource Identifier (URI): Generic Syntax)
基于this related answer,您正在查看的列表如下:A-Z
,a-z
,0-9
,-
,.
,_
,~
,:
,/
,?
,#
,[
,]
,{ {1}},@
,!
,$
,&
,'
,(
,)
,{{1 },*
,+
和,
。其他一切必须是url-encoded。此外,其中一些字符只能存在于URI中非常特定的位置,RFC具有所有这些细节。