Мне нужно извлечь данные из источника, который представляет их одним из двух способов. Данные могут быть отформатированы так:
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%)
Данные, которые мне нужно извлечь, - это процент и партия (это результаты выборов), которые либо в скобках (первый пример), либо являются единственным нечисловым текстом.
Пока у меня есть это:
preg_match('/(.*)\(([^)]*)%\)/', $value, $match);
Что дает мне следующие совпадения (для первого примера):
Array
(
[0] => Francis (Lab) 18,077 (60.05%)
[1] => Francis (Lab) 18,077
[2] => 60.05
)
Итак, у меня есть процент, но мне также нужен ярлык партии, который может быть или не быть в скобках, а может и не быть единственным текстом. Кто-нибудь может помочь?