/ / Starcraft regex regex, проблеми със скобите - regex, rss, yahoo, yahoo-pipe

Повторно регрес на Starcraft, проблеми в скоби - regex, rss, yahoo, yahoo-pipes

[2v2] race = [TPvZP] карта = [Monlyth Ridge] играчи = [играч 1 (T) (w), играч 2 (P) (L) срещу играч3 (Z) (W), player4 (P) (W) ] Дължина = [00-10-06]

Работейки в сайт на Starcraft за TheLittleOne (професионален играч), аз се боря за намирането на регекс за следната ситуация. [Скобите причиняват изражението на регекс да е дълго.

Искам следните ужилвания EG) Гаметипът: 2v2 Състезанието: TPvZP Карта: хребет Монлийт Player1: Име Player2: Име Player3: Име Player4: Име Играч1-4: Състезание (P, T, Z, R) Играч 1-4: Win (W, L) Дължина на играта: 10 минути 6 секунди

Търсих S.O. няколко дни и не мога да намеря решение.

Отговори:

2 за отговор № 1

Като се има предвид низ [2v2] race=[TPvZP] map=[Monlyth Ridge] players=[player 1(T)(w), player 2(P)(L) vs player3(Z)(W), player4(P)(W)] Length=[00-10-06],

~ ((w*) s*=s*)? [(.*?)] ~ msx ще произведе следното:

"" => 2v2
race => TPvZP
map => Monlyth Ridge
players => player 1(T)(w), player 2(P)(L) vs player3(Z)(W), player4(P)(W)
Length => 00-10-06

след това се прилага ~ (.*?) ( (w) ) ( (w) ) s* ,? s* (vs)? ~ msx за players трябва да произведе нещо подобно:

[2] => Array
(
[0] => T
[1] => P
[2] => Z
[3] => P
)

[3] => Array
(
[0] => w
[1] => L
[2] => W
[3] => W
)

което изглежда е достатъчно, за да направите желания изходен низ.