파이썬에서 정규 표현식을 사용하여 페이지 소스를 검색하고 자바 스크립트에서 모든 json 정보를 찾습니다. 특히 예는 다음과 같이 보일 것이다 :Python에서 여러 줄 정규 표현식 사용?
var fooData = { id: 123456789, name : "foo bar", country_name: "foo", country_is_eu: null, foo_bars: null, foo_email: null, foo_rate: 1.0, foo_id: 0987654321 };
나는 비교적 새로운 해요 모두를 이해하는 정규 표현식에 대해 알아야 할, 그리고 내가 뭘 내가 뭘하는 것이 맞는지 확실하지 않다. 몇 가지 개별 라인을 얻을 수는 있지만 재사용 방법을 완전히 모르겠습니다. 다중 라인. 지금 당장 가지고있는 코드입니다.
prog = re.compile('[var ]?\w+ ?= ?{[^.*]+\n};', re.MULTILINE)
vars = prog.findall(text)
왜 작동하지 않는 겁니까?
더 명확하게하기 위해, 난 정말 이런이 괄호 사이에있는 모든 일치해야합니다 그래서var fooData = { };
는, 기본적으로 내가 보이는 제외한 모든 라인을 일치하는 방법을 알아낼 수 없습니다 이 :
체크 아웃을 [내 반응은] (http://stackoverflow.com/a/14000225/1006989), 나는 그것을 업데이트, 어쩌면 당신은 그것을주고 싶습니다 시도해보십시오 –
도와 주셔서 감사합니다! 나는 그것이'[^}] +'처럼 단순하다는 것을 깨닫지 못했지만, 당신이 그것을 할 수 있는지 몰랐습니다. – jackcogdill
내장 된'json' 모듈이 유용합니다. 정규식 대신에 그것을 사용해야하는 것 같습니다. – ninMonkey