Pragnę zauważyć, że skrypt jest gotowy do testu i jest przykładowy tekst do konwertowania.
1. Nie jestem w stanie stworzyć regex'a do
Cytat
Dostępne rodzaje:Obrońca,Zwiadowca,Ostrze zmroku,Ostrze pieśni,Mistyczny łucznik,Śnieżna pantera,Księżycowy łuk
Dostępne rodzaje mogą zawierać maksymalnie 10 pozycji. Są to nazwy typu \w{4,10}\s\w{4,10} cos spacja cos. Ten ciąg jak mówiłem może mieć max 10 pozycji i nie mam pomysłu jak mogę takie coś ukazać:/2. Chciałem również dowiedzieć się czy mogę wartości z 'Dostępne rodzaje' dopasować do switch'a? Bo chciałbym np wyprowadzić obrazek do każdej poszczególnej jednostki.
3.
i ogólnie wszystkie surowce. Otóż jak widać Output to kamień z małej litery. Czy da się zrobić dużą albo pobrać samą wartość regex'a?
4.
Cytat
Bohater Aust Ogt ma poziom 46 i dowodzi:353 3 na Mistyczny łucznik poziomie,353 3 na Księżycowy łuk poziomie,353 3 na Mistyczny łucznik poziomie,353 3 na Księżycowy łuk poziomie,353 3 na Mistyczny łucznik
Wyciąganie takich wartości regex'em jest możliwe? Maksymalna ilość opcji to 6 maksymalna liczba to 999 maksymalna 2 liczba to 7. Chciałbym potem przedstawiać to w sposób.Bohater Nazwa ma poziom \d{2} i dowodzi
353 jednostkami mistyczny łucznik na poziomie 3
Bardzo dziękuję za każdą odpowiedź. Proszę również o zerknięcie z grubsza na kod czy 'może być'.
switch($unit){ case 'Obrońca' : break; } } else { }
<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml"><head> <meta http-equiv="content-type" content="text/html; charset=windows-1250"> <style type="text/css"> body { text-align: center; font: small/1.3 'DejaVu Sans', arial, sans-serif; } #page { max-width: 1000px; margin: auto; text-align: left; _width: 1000px; } textarea { width: 100%; height: 20em; } </style> <?php if($_POST['text'] != '') { $text = $_POST['text']; $orig_text = $text; $info = "Znaleziono cel"; } else { } $info = "Znaleziono ilosc zelaza"; } else { } $info = "Znaleziono ilosc kamienia"; } else { } $info = "Znaleziono ilosc drewna"; } else { } $info = "Znaleziono ilosc zywnosci"; } else { } $info = "Znaleziono ilosc bohaterow w miescie"; } else { } $info = "Znaleziono mury"; } else { } $info = "Znaleziono wytrzymalosc muru"; } else { } $info = "Znaleziono wieze"; } else { } #Bohater Emma ma/jest poziom/poziomu 0-99# if (preg_match_all('/Bohater \w{1,7}[\s]?\w{1,7} (ma poziom|jest poziomu) \d{2}/', $text, $lista)) { $info = "Znaleziono liste bohaterow"; } else { } $info = "Znaleziono ilosc jednostek"; } else { } switch($unit){ case 'Obrońca' : break; } } else { } } } ?> <body> <div id="page"> <h2>Raport Konwert</h2> Wklej np <?PHP echo '<br><br> Polska(112|279): miejsce to okazało się dobrze chronione i twoi szpiedzy zdążyli przekazać wyłącznie podstawowe informacje, zanim zostali schwytani. Oto ich raport: Łączna liczba jednostek: Niepowstrzymana armia Bohaterowie: 1 Rodzaje wojsk:Śnieżny wilk,Zwiadowca,Ostrze pieśni,Mistyczny łucznik,Druid Żelazo:9968 kamień:16725 drewno:25673 żywność:85555 Mury poziomu 20. Wytrzymałość: 600 Wieże strażnicze poziomu 20 Bohater Gerald jest poziomu 36 Bohater Arst jest poziomu 11 Bohater Ax1 jest poziomu 77?'; echo '<br><br> Szpieg został wysłany do: Canna(121|299). Wyniki: Łączna liczba jednostek: 8007 Bohaterowie: 5 Dostępne rodzaje:Obrońca,Zwiadowca,Ostrze zmroku,Ostrze pieśni,Mistyczny łucznik,Śnieżna pantera,Księżycowy łuk Żelazo:158479 kamień:102894 drewno:70990 żywność:93300 Mury poziomu 22. Wytrzymałość: 660 Wieże strażnicze poziomu 21 Bohater Abigail ma poziom 47 i nie dowodzi żadnymi jednostkami Bohater Thot Ogt ma poziom 17 i nie dowodzi żadnymi jednostkami Bohater Tunrida ma poziom 44 i dowodzi:322 3 na Księżycowy łuk poziomie,322 3 na Mistyczny łucznik poziomie,322 3 na Księżycowy łuk poziomie,322 3 na Mistyczny łucznik poziomie,322 3 na Księżycowy łuk poziomie; Bohater Chloe ma poziom 44 i dowodzi:322 3 na Mistyczny łucznik poziomie,322 3 na Księżycowy łuk poziomie,322 3 na Ostrze zmroku poziomie,322 3 na Księżycowy łuk poziomie,322 3 na Mistyczny łucznik poziomie; Bohater Aust Ogt ma poziom 46 i dowodzi:353 3 na Mistyczny łucznik poziomie,353 3 na Księżycowy łuk poziomie,353 3 na Mistyczny łucznik poziomie,353 3 na Księżycowy łuk poziomie,353 3 na Mistyczny łucznik poziomie;'; ?> <p>Dane wejściowe:</p> <p> </p> <p> <input type="radio" id="Kon" name="Kon" value="Kon" checked="checked" /> <label for="Kon">Kon</label> </p> <p> <input type="submit" name="submit" value="Konwertuj" /> <input type="reset" value="Wyczyść" /> </p> </form> <hr /> <?php '.$zelazo[0].'<br> '.$kamien[0].'<br> '.$drewno[0].'<br> '.$zywnosc[0].'<br> '.$bohater[0].'<br> '.$mury[0].'<br> '.$wieze[0].'<br> '.$liczba[0].'<br> '.$hpmuru[0].'<br> '.$unit[0].'<br> '; foreach ($lista[0] as $val) { } '.$zelazo[0].'<br> '.$kamien[0].'<br> '.$drewno[0].'<br> '.$zywnosc[0].'<br> '.$bohater[0].'<br> '.$mury[0].'<br> '.$wieze[0].'<br> '.$liczba[0].'<br> '.$hpmuru[0].'<br> '.$unit[0].'<br> '; foreach ($lista[0] as $val) { } } } ?> </div> </body> </html>