2010-04-01 5 views
1

HIAction Script 3.0 : 문자열에서 두 값을 추출하는 방법?

나는 URL을 가지고

var str:String = "conn=rtmp://server.com/service/&fileId=myfile.flv" 

또는

var str:String = "fileId=myfile.flv&conn=rtmp://server.com/service/" 

STR이 같은 수 있습니다,하지만 난이 "코네티컷"과의 값을 얻을 필요 "FileID에" 문자열에서.

어떻게 그 기능을 쓸 수 있습니까?

답변

1

문자열에서 두 번째 '='에 문제가있는 것으로 생각됩니다. 다행히도, 이것들은 액션의 String.Split 방법은 문자열에 대한 분할을 지원하므로 다음 코드는 작동합니다 :

var str:String = "conn=rtmp://server.com/service/&fileId=myfile.flv"; 
var conn:String = (str + "&").Split("conn=")[1].Split("&")[0]; 

var str:String = "fileId=myfile.flv&conn=rtmp://server.com/service/"; 
var fileId:String = (str + "&").Split("fileId=")[1].Split("&")[0]; 

참고 : 문자열이 'didn를 나는 경우, 문자열에 &를 추가 해요 우리가 찾고있는 URL 매개 변수를 초과하는 URL 매개 변수가 없습니다.

+0

고맙습니다. – coderex

+0

네, 그렇게했습니다. 그러나 for-loop를 포함하고 있으며 단일 매개 변수 URL을 처리하지 않으며 설명이 없습니다. 좀 더 완전한 답을 다운 그레이드하는 것은 그리 좋지 않습니다. : - \ – Prutswonder

+0

내 대답은 많은 수의 인수를 처리 할 수 ​​있으며 for 루프를 사용하기 때문에 지연되지 않습니다. -__- –

0
var url:String = "fileId=myfile.flv&conn=rtmp://server.com/service/"; 

var strArray:Array = url.split(/=/); 

trace(strArray[0]) //Just to test 

은 인덱스 0-2 (임의의 항목)에 'conn 또는 fileid'라는 단어가있는 배열을 반환합니다. 1, 3의 대안은 그 안에있는 정보입니다.


아니면 다른 것이 필요 했습니까?

FA = [
[ "FileID에", "myfile.flv"]
[ "CONN", "RTMP 다음"FA "변수는 최종 될 방법

+0

코드를 테스트 했습니까? strArray = [ "fileId", "yfile.flv & conn", "rtmp : //server.com/service/"] –

1
var str:String = "fileId=myfile.flv&conn=rtmp://server.com/service/" 
var fa:Array = str.split("&"); 
for(var i:uint=0;i<fa.length;i++) 
    fa[i] = fa[i].split('='); 

: //server.com/service/ "]

관련 문제