2014-11-09 2 views
1

인코딩 된 URL 인 것처럼 보이는 데이터를 JSON 배열이나 js 배열로 변환하려면 어떻게해야합니까?URL 인코딩 된 데이터를 JSON 배열 또는 js 배열로 변환

&nfl_s_delay=120&nfl_s_stamp=1109033755&nfl_s_left1=Cleveland%2024%20%20%20Cincinnati%203%20(END%20OF%204TH)&nfl_s_right1_count=0&nfl_s_url1=http://sports.espn.go.com/nfl/boxscore?gameId=400554328&nfl_s_left2=Kansas%20City%2017%20%20%20Buffalo%2013%20(00:00%20IN%204TH)&nfl_s_right2_count=0&nfl_s_url2=http://sports.espn.go.com/nfl/boxscore?gameId=400554332&nfl_s_left3=Miami%2016%20%20%20Detroit%2020%20(00:00%20IN%204TH)&nfl_s_right3_count=0&nfl_s_url3=http://sports.espn.go.com/nfl/boxscore?gameId=400554355&nfl_s_left4=^Dallas%2031%20%20%20Jacksonville%2017%20(FINAL)&nfl_s_right4_count=0&nfl_s_url4=http://sports.espn.go.com/nfl/boxscore?gameId=400554358&nfl_s_left5=San%20Francisco%2027%20%20%20New%20Orleans%2024%20(END%20OF%201ST%20OT)&nfl_s_right5_count=0&nfl_s_url5=http://sports.espn.go.com/nfl/boxscore?gameId=400554362&nfl_s_left6=Tennessee%207%20%20%20Baltimore%2021%20(00:00%20IN%204TH)&nfl_s_right6_count=0&nfl_s_url6=http://sports.espn.go.com/nfl/boxscore?gameId=400554367&nfl_s_left7=Pittsburgh%2013%20%20%20NY%20Jets%2020%20(END%20OF%204TH)&nfl_s_right7_count=0&nfl_s_url7=http://sports.espn.go.com/nfl/boxscore?gameId=400554370&nfl_s_left8=Atlanta%2027%20%20%20Tampa%20Bay%2017%20(END%20OF%204TH)&nfl_s_right8_count=0&nfl_s_url8=http://sports.espn.go.com/nfl/boxscore?gameId=400554372&nfl_s_left9=Denver%2041%20%20%20Oakland%2010%20(00:00%20IN%203RD)&nfl_s_right9_count=0&nfl_s_url9=http://sports.espn.go.com/nfl/boxscore?gameId=400554396&nfl_s_left10=St.%20Louis%2014%20%20%20Arizona%2010%20(00:00%20IN%202ND)&nfl_s_right10_count=0&nfl_s_url10=http://sports.espn.go.com/nfl/boxscore?gameId=400554397&nfl_s_left11=NY%20Giants%2017%20%20%20Seattle%2017%20(00:00%20IN%203RD)&nfl_s_right11_count=0&nfl_s_url11=http://sports.espn.go.com/nfl/boxscore?gameId=400554400&nfl_s_left12=Chicago%20at%20Green%20Bay%20(8:30%20PM%20ET)&nfl_s_right12_count=0&nfl_s_url12=http://sports.espn.go.com/nfl/preview?gameId=400554403&nfl_s_left13=Carolina%20at%20Philadelphia%20(8:30%20PM%20ET)&nfl_s_right13_count=0&nfl_s_url13=http://sports.espn.go.com/nfl/preview?gameId=400554408&nfl_s_count=13&nfl_s_loaded=true 

내가 & nfl_s_left2의 =하지만 때마다 하나 매개 변수의 증가에 의해 분열 것입니다. 그래서 & nfl_s_left2 =로 갈라져 나올 수 있습니다. 그러나 비슷한 것은 다음번에 비슷할 것이므로 & nfl_s_left3 =입니다. 그래서 더 구체적인 질문은 가변 문자열로 나눌 수 있습니까? & nfl_s_left로 나눌 수 있지만 배열의 값에 number =를 얻을 수 있습니다.

이 데이터를 정리하는 가장 좋은 방법은 무엇입니까?

+0

당신이 정규식에 대해 생각 해본 적이 바이올린 데모는 어떻습니까? – Knerd

+0

@Kenerd 정규식을 사용하려면 어떻게해야합니까? 당신이 나를 보여줄 수 있습니까? 난 아직도 특정 정규식에 쪼개지 않고 문제가 어디서 내가 쪼갠다면 – wordSmith

+0

이 웹 사이트를 체크 아웃해야 할 것인가, http://regex101.com/ 당신이 필요로하는 것처럼 정규식을 클릭 할 수있다 :) – Knerd

답변

0

방법이

function url_split(str){ 
    var jsArry={},tmp = str.split('&nfl_s_'),tmp2; 
    tmp.forEach(function(e){ 
    tmp2 = e.split('='); 
     jsArry[tmp2[0]] = tmp2[1]; 
    }); 
    return jsArry; 
} 

http://jsfiddle.net/oswspkL0/