[2v2] race = [TPvZP] mapa = [Monlyth Ridge] gracze = [gracz 1 (T) (w), gracz 2 (P) (L) vs gracz3 (Z) (W), gracz4 (P) (W) ] Długość = [00-10-06]
Pracując na stronie Starcraft dla TheLittleOne (profesjonalny gracz), staram się znaleźć regex dla następującej sytuacji. Nawiasy kwadratowe powodują, że wyrażenie regex jest zbyt długie.
Chcę następujące użądlenia NA PRZYKŁAD) Rodzaj gry: 2v2 Wyścig: TPvZP Mapa: Grzbiet Monlyth Gracz 1: Nazwa Gracz 2: Nazwa Gracz 3: Nazwa Gracz4: Nazwa Gracz 1-4: Wyścig (P, T, Z, R) Gracz 1-4: Wygrana (W, L) Długość gry: 10 minut 6 sekund.
Szukałem S.O. przez kilka dni i nie mogę znaleźć rozwiązania.
Odpowiedzi:
2 dla odpowiedzi № 1Biorąc pod uwagę ciąg [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
spowoduje:
"" => 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
następnie zastosowanie ~ (.*?) ( (w) ) ( (w) ) s* ,? s* (vs)? ~ msx
na players
powinien produkować coś takiego:
[2] => Array
(
[0] => T
[1] => P
[2] => Z
[3] => P
)
[3] => Array
(
[0] => w
[1] => L
[2] => W
[3] => W
)
co wydaje się wystarczające do utworzenia pożądanego ciągu wyjściowego.