두 가지 방법 중 하나로 제시하는 소스에서 데이터를 추출해야합니다. 데이터는 다음과 같은 형식의 수 : 복잡한 정규식 질문입니다. 데이터는 괄호 안에 들어갈 수도 있고 그렇지 않을 수도 있습니다.
Francis (Lab) 18,077 (60.05%); Waller (LD) 4,140 (13.75%); Evans (PC) 3,545 (11.78%); Rees-Mogg (C) 3,064 (10.18%); Wright (Veritas) 768 (2.55%); La Vey (Green) 510 (1.69%)
또는 같은
:Lab 8,994 (33.00%); C 7,924 (29.07%); LD 5,197 (19.07%); PC 3,818 (14.01%); Others 517 (1.90%); Green 512 (1.88%); UKIP 296 (1.09%)
I 추출해야 할 데이터는 괄호 안에 하나입니다 비율과 파티 (이 선거 결과이다)이며, (첫 번째 예) 또는 숫자가 아닌 유일한 텍스트입니다.
지금까지 나는이있다 : 그래서
Array
(
[0] => Francis (Lab) 18,077 (60.05%)
[1] => Francis (Lab) 18,077
[2] => 60.05
)
내가 비율을 가지고 있지만, 나는 또한 파티 레이블을 필요 나에게 (첫 번째 예) 다음의 일치를주고있다
preg_match('/(.*)\(([^)]*)%\)/', $value, $match);
괄호 안에있을 수도 있고 없을 수도 있으며, 유일한 텍스트 일 수도 있고 아닐 수도 있습니다. 누구든지 도와 줄 수 있습니까?
세미콜론으로 토큰을 분해하고 각 토큰을 개별적으로 살펴보고 첫 번째 숫자 앞에 괄호를 매칭 한 다음 정규 표현식을 사용하여 필요한 데이터를 분리하지 않는 이유는 무엇입니까? 정규 표현식보다 작업하기가 약간 쉬울 수도 있습니다. – Salty