Autor | Zpráva | ||
---|---|---|---|
Ricky4852 Profil |
#1 · Zasláno: 18. 2. 2012, 21:42:20
Dobrý deň,
nevedel som vymyslieť lepší titulok, takže sa ospravedlňujem, skúsim sem hodiť skript a potom vysvetlím, o čo sa snažím: $prikaz['/okno']=array("/o","/ok","/okn","/okno"); $prikaz['/obed']=array("/ob","/obe","/obed"); $prikaz['/dvere']=array("/d","/dv","/dve","/dver","/dvere"); no, ide o to, že užívateľ píše do "chatu" príkazy, typu: /okno ahoj /okno ako sa mas? je problém v tom, že chcem aby príkazy fungovali aj v skratkách, napríklad: /o ahoj /okn ako sa mas? Vyššie som dal do array $prikaz['/okno'] všetky možné príkazy, ktoré by mal server prijať (/o, /ok, /okn, /okno), a zapamätať si ich ako jeden oficiálny príkaz /okno. Takže potrebujem funkciu, ktorá napríklad z premennej $napis = "/ok" by mala spraviť príkaz "/okno" Z premennej "/o" by mal spraviť príkaz "/okno" Z premennej "/ob" by mal spraviť príkaz "/obed" Z premennej "/dver" by mal spraviť príkaz "/dvere" A tak ďalej, snáď ma dobre chápete, a dúfam že mi s tým pomôžete, ďakujem |
||
Keeehi Profil |
Takže ti jde o to, aby když máš v proměnné text z chatu a na začátku je zkratka, tak aby ji to nahradilo za celý výraz?
function rozsir_zkratky($text) { return preg_replace_callback( '~^/[a-zA-Z]+~', create_function( '$matches', '$prepis = array("/o" => "/okno", "/ok" => "/okno", "/okn" => "/okno", "/okno" => "/okno", "/ob" => "/obed", "/obe" => "/obed", "/obed" => "/obed", "/d" => "/dvere", "/dv" => "/dvere", "/dve" => "/dvere", "/dver" => "/dvere", "/dvere" => "/dvere"); return isset($prepis[$matches[0]]) ? $prepis[$matches[0]] : $matches[0];' ), $text ); } $vstup = "/ok ako sa mas?"; $vystup = rozsir_zkratky($vstup) // $vystup == " /okno ako sa mas?"; |
||
Ricky4852 Profil |
#3 · Zasláno: 18. 2. 2012, 22:35:20
Veľká vďaka :) funguje to
|
||
Časová prodleva: 12 let
|
0