큰 문자열에서 값을 추출하는 가장 효율적인 방법을 찾고 있습니다.Javascript를 사용하여 문자열의 값을 구문 분석
EXT-X-DATERANGE:ID="PreRoll_Ident_Open",START-DATE="2016-12-14T120000.000z",DURATION=3,X-PlayHeadStart="0.000",X-AdID="AA-1QPN49M9H2112",X-TRANSACTION-VPRN-ID="1486060788",X-TrackingDefault="1",X-TrackingDefaultURI="http,//606ca.v.fwmrm.net/ad/l/1?s=g015&n=394953%3B394953&t=1485791181366184015&f=&r=394953&adid=15914070&reid=5469372&arid=0&auid=&cn=defaultImpression&et=i&_cc=15914070,5469372,,,1485791181,1&tpos=0&iw=&uxnw=394953&uxss=sg579054&uxct=4&metr=1031&init=1&vcid2=394953%3A466c5842-0cce-4a16-9f8b-a428e479b875&cr="s=0&iw=&uxnw=394953&uxss=sg579054&uxct=4&metr=1031&init=1&vcid2=394953%3A466c5842-0cce-4a16-9f8b-a428e479b875&cr="
나는 위의 예를 가지고있다. 아이디어는 전에 모든 대문자 문자열을 추출하는 것입니다 : 객체 키로, 그리고 값 사이에 다음 쉼표가 올 때까지 따옴표 사이의 모든 것이 추출됩니다. 그런 다음이 객체가 생성 될 때까지 전체 문자열을 반복합니다.
nonParsed.substring(nonParsed.lastIndexOf("="")+1, nonParsed.lastIndexOf("","));
나는 시작으로이 개념을했지만, 도움이를 반복하고보다 효율적으로 평가 될 것입니다 만들기. 그것은 당신이 헤더에 대한 경우 문자열을 혼합 한 것처럼, 단지 대문자하지 보이는
{
'EXT-X-DATERANGE:ID': 'PreRoll_Ident_Open',
'START-DATE': '2016-12-14T120000.000z',
'DURATION': '3',
...
}
아마도 도움이 될 것입니다. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions –
X에 쉼표가있는 것 같기 때문에 보통 때보 다 조금 힘들 수 있습니다 -TrackingDefaultURI 콜론이 있어야하는 헤더 값입니다. 이것은 순진한 나누기를 더 어렵게 만듭니다. –
최종 출력물은 무엇입니까? – revo