Kom ihåg mig?
Home Menu

Menu


Analyzera textfil! A tricky one!

 
Ämnesverktyg Visningsalternativ
Oläst 2008-10-29, 21:23 #1
lerkan69 lerkan69 är inte uppkopplad
Nykomling
 
Reg.datum: Dec 2007
Inlägg: 31
lerkan69 lerkan69 är inte uppkopplad
Nykomling
 
Reg.datum: Dec 2007
Inlägg: 31
Jag tror det jag behöver ha hjälp med är riktigt svårt, bara som en varning!

Jag håller på att bygga en databas hemsida, där användarna kommer kunna se sina pokerhänder visuelt!

1. Användaren laddar up hand historiken (se formatet nedan)
2. Handen läggs in i en databas
3. användaren kan välja vilken hand han vill se (från andra medlemmar), och låta flash spela upp handen visuellt!

Jag vet att detta är ett stort projekt, och förmodligen kräven en lång förklaring. Jag förväntar mig inte att någon ska slösa massa dyrbar tid för att skriva ner allt, utan är väldigt tacksam för lite hjälp här och var.

Tex, hur får jag flash att läsa av text filen?
Jag gjorde några desperata försök med funtionen "SPLIT", men utan framgång!

Tack på förhand!


Full Tilt Poker Game #8208930883: Table Howie (heads up) - $0.25/$0.50 - No Limit Hold'em - 16:06:03 ET - 2008/09/24
Seat 1: Gooossss ($23.50)
Seat 2: d3rv0gel ($20.25)
d3rv0gel posts the small blind of $0.25
Gooossss posts the big blind of $0.50
The button is in seat #2
*** HOLE CARDS ***
Dealt to Gooossss [2h Ac]
d3rv0gel calls $0.25
Gooossss checks
*** FLOP *** [5d Jd Qs]
Gooossss checks
d3rv0gel checks
*** TURN *** [5d Jd Qs] [3h]
Gooossss checks
d3rv0gel checks
*** RIVER *** [5d Jd Qs 3h] [9c]
Gooossss bets $1
d3rv0gel folds
Uncalled bet of $1 returned to Gooossss
Gooossss mucks
Gooossss wins the pot ($0.95)
*** SUMMARY ***
Total pot $1 | Rake $0.05
Board: [5d Jd Qs 3h 9c]
Seat 1: Gooossss (big blind) collected ($0.95), mucked
Seat 2: d3rv0gel (small blind) folded on the River



Full Tilt Poker Game #8208935536: Table Howie (heads up) - $0.25/$0.50 - No Limit Hold'em - 16:06:25 ET - 2008/09/24
Seat 1: Gooossss ($23.95)
Seat 2: d3rv0gel ($19.75)
Gooossss posts the small blind of $0.25
d3rv0gel posts the big blind of $0.50
The button is in seat #1
*** HOLE CARDS ***
Dealt to Gooossss [2d 2s]
Gooossss raises to $1
d3rv0gel calls $0.50
*** FLOP *** [5s Js Td]
d3rv0gel checks
Gooossss bets $1.50
d3rv0gel folds
Uncalled bet of $1.50 returned to Gooossss
Gooossss mucks
Gooossss wins the pot ($1.90)
*** SUMMARY ***
Total pot $2 | Rake $0.10
Board: [5s Js Td]
Seat 1: Gooossss (small blind) collected ($1.90), mucked
Seat 2: d3rv0gel (big blind) folded on the Flop



Full Tilt Poker Game #8208938915: Table Howie (heads up) - $0.25/$0.50 - No Limit Hold'em - 16:06:42 ET - 2008/09/24
Seat 1: Gooossss ($24.85)
Seat 2: d3rv0gel ($18.75)
d3rv0gel posts the small blind of $0.25
Gooossss posts the big blind of $0.50
The button is in seat #2
*** HOLE CARDS ***
Dealt to Gooossss [7d Ah]
d3rv0gel calls $0.25
Gooossss checks
*** FLOP *** [5s 4d Qs]
Gooossss checks
d3rv0gel checks
*** TURN *** [5s 4d Qs] [6h]
Gooossss bets $1
d3rv0gel folds
Uncalled bet of $1 returned to Gooossss
Gooossss mucks
Gooossss wins the pot ($0.95)
*** SUMMARY ***
Total pot $1 | Rake $0.05
Board: [5s 4d Qs 6h]
Seat 1: Gooossss (big blind) collected ($0.95), mucked
Seat 2: d3rv0gel (small blind) folded on the Turn
lerkan69 är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-10-29, 21:30 #2
Jimpsson Jimpsson är inte uppkopplad
Flitig postare
 
Reg.datum: Jun 2006
Inlägg: 428
Jimpsson Jimpsson är inte uppkopplad
Flitig postare
 
Reg.datum: Jun 2006
Inlägg: 428
Är det i PHP? I så fall kan du använda explode.
Jimpsson är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-10-29, 22:42 #3
Jonas Jonas är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Feb 2004
Inlägg: 3 364
Jonas Jonas är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Feb 2004
Inlägg: 3 364
Hade parsat filen i tex. PHP och sedan läst in den via flash efteråt.


Som Rokkan säger, explode och sedan regexp's på varje rad.

Du nämner inget om hur du vill ha formatet eller viket språk det handlar om?

Du har bara gett oss en uppgift men inget om hur det skall levereras.
Jonas är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-10-29, 22:44 #4
MMCs avatar
MMC MMC är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jan 2008
Inlägg: 560
MMC MMC är inte uppkopplad
Mycket flitig postare
MMCs avatar
 
Reg.datum: Jan 2008
Inlägg: 560
Jag tror inte att du bör låta Flash göra analysen direkt från historikfilerna. Gör det till en tvåstegsprocess där du låter ett skript läsa in filerna och lägga in dem i databasen på ett sätt som gör det trivialt för flash att hämta in och visa händerna.

Det finns forum som är dedikerade för att analysera pokerhänder, men WN är inte ett av dem. De brukar vara lite ljusskygga, men vet man var man ska titta så...
MMC är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-10-30, 15:00 #5
grinditwp grinditwp är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2008
Inlägg: 320
grinditwp grinditwp är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2008
Inlägg: 320
Jag har gjort en liknande sak förut, dock ej med Flash.
Låt PHP dela upp datat så du får det sparat i variabler först, genom att "crawla" genom det hela.

Kod:
//$string = 'hela pokerhandens logg...'
//Ta reda på spelad hand
$handName = substr($string, 0, strpos($string, 'Seat', 0));
$playersTmp = substr($string, 0, strpos($string, '*** HOLE CARDS ***', 0));
$a = 0; $i = 0;
echo $handName . '<br />';
//Ta reda på spelarnas namn
while(strpos($playersTmp, 'Seat', $a) !== FALSE){
	$a = strpos($playersTmp, 'Seat', $a)+1;
	$a = strpos($playersTmp, ':', $a)+2;
	$b = strpos($playersTmp, '(', $a)-1;
	$playerName[$i] = substr($playersTmp, $a, $b-$a);
	echo '<strong>Player ' . ($i+1) . ':</strong> ' . $playerName[$i] . '<br />';
	$i++;
}
//Ta reda på vilken spelare vi är
$a = strpos($string, 'Dealt to', 0)+1;
$a = strpos($string, 'o', $a)+2;
$b = strpos($string, '[', $a)-1;
$weArePlayer = substr($string, $a, $b-$a);
echo '<strong>You are:</strong>' . $weArePlayer . '<br />';

//OSV... du fattar, bara fortsätta på samma sätt så har du snabbt hela handens viktiga moment...
Sedan kan du ställa upp detta på valfritt sätt så att flash sedan kan tolka det. Vilket inte borde vara så svårt...
grinditwp är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-10-30, 23:17 #6
lerkan69 lerkan69 är inte uppkopplad
Nykomling
 
Reg.datum: Dec 2007
Inlägg: 31
lerkan69 lerkan69 är inte uppkopplad
Nykomling
 
Reg.datum: Dec 2007
Inlägg: 31
tackar!Perfekt!

Jag inser att jag maste lara mig en hel del om php innan jag kan slutfora mitt projekt.
Ska lasa nagra bocker och kolla pa lite filmer... Ater kommer om ett tag och berattar hur det gatt!
lerkan69 är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-10-31, 14:40 #7
iXam iXam är inte uppkopplad
Medlem
 
Reg.datum: Aug 2005
Inlägg: 219
iXam iXam är inte uppkopplad
Medlem
 
Reg.datum: Aug 2005
Inlägg: 219
Samt läsa på lite regexp som i princip är lösningen på alla problem i världen
iXam är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-11-07, 20:50 #8
lerkan69 lerkan69 är inte uppkopplad
Nykomling
 
Reg.datum: Dec 2007
Inlägg: 31
lerkan69 lerkan69 är inte uppkopplad
Nykomling
 
Reg.datum: Dec 2007
Inlägg: 31
Har suttit hela kvällen och försökt lära mig hur du gjorde den där poker hand scripted... Kommit halv vägs.. börjar fatta hur det funkar..

Jag listade ut hur man tar reda på vilken start hand man själv har:

//Vilken start hand vi har!
$a = strpos($string, 'Dealt to', 0)+1;
$a = strpos($string, '[', $a)+1;
$b = strpos($string, ']', $a);
$cards = substr($string, $a, $b-$a);
echo 'You Have:' . $cards . '
';


Jag antar att nästa steg är att ta reda på vad som händer i handen, vilket är i detta format:

*** HOLE CARDS ***
Dealt to Hero [7h 9h]
Hero raises to $1.50
PersonalJesus77 calls $1


Jag fattar inte riktigt hur jag ska lösa denna del... Vad som händer varierar från hand till hand..

Help!!
lerkan69 är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-11-07, 22:00 #9
Jonas Jonas är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Feb 2004
Inlägg: 3 364
Jonas Jonas är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Feb 2004
Inlägg: 3 364
Ser enkla problem i det scriptet. Man skall _aldrig_ klippa i en sträng, eftersom man vet aldrig vad inputen består av.

Regexp gör jobbet enkelt åt dig.
Jonas är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-11-08, 20:10 #10
lerkan69 lerkan69 är inte uppkopplad
Nykomling
 
Reg.datum: Dec 2007
Inlägg: 31
lerkan69 lerkan69 är inte uppkopplad
Nykomling
 
Reg.datum: Dec 2007
Inlägg: 31
ok... hittade nagra tutorials med regexp... ska gora dom, och hoppas att jag kan lista ut det.. tackar
lerkan69 är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 21:13.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017