所以我们需要http://127.0.0.1:4773/robot10382.flv?action=read
我们需要从protocol
,ip / adress
,端口,实际url
(此处为robot10382.flv)和{{1} (action = read here)如何在一个reg exp中将所有内容解析为字符串变量?
答案 0 :(得分:3)
我很惊讶AS3没有包含正确的URL解析工具。简而言之,使用RE安全地解析URL并不容易。 Here's an example of doing it though.
答案 1 :(得分:2)
/(\w+)\:\/\/(\d+\.\d+\.\d+\.\d+)\:(\d+)\/(\w+)\?(.+)/
:$ 1 - 协议,$ 2 - ip,$ 3 - 端口,$ 4 - 实际网址,$ 5 - 操作
还有另一种方式:
协议:url.split('://')[0]
ip /域名:url.split('://')[1].split(':')[0]
(如果没有指定端口 - url.split('://')[1].split('/)[0]
港口:url.split('://')[1].split(':')[1].split('/')[0]
实际网址:url.split('?')[0].split('/').reverse()[0]
操作:此数组的url.split('?')[1].split('&')/*the most possible separator imho*/
元素也可以拼接('=')
以分隔变量名称和值。
我知道有一种观点认为splice
不应该使用,但我认为如果使用得当它会很漂亮。
答案 2 :(得分:0)
有时,在将文件路径传递给SWF时,您希望在将文件传递给AS3类之前执行FileExistance检查。为此,您需要知道URI是文件还是http URL或具有特定协议的任何其他URI(名字对象)。 以下代码将告诉您是否正在处理本地完整路径或相对路径。
http://younsi.blogspot.com/2009/08/as3-uri-parser-and-code-sequence-to.html