[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
)
което изглежда е достатъчно, за да направите желания изходен низ.