hacky carky a replace
6 příspěvků
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
Je v php nějaká fce na odstranění interpunkce z textu ? v manuálu sem ždnou nemohl najít a druhý dotaz dá se nějak limitovat fce str_replace (popř pužít jiná) aby se provedla jen 5x aby nahradila třeba jen 5 prvních znaků a ostatní nalezené nechala být ? děkuji
-
<HTML>ad 1) function undiak($str) { $abc = "áäčďéěíĺľňóôőöŕšťúůűüýřžÁÄČĎÉĚÍĹĽŇÓÔŐÖŔŠŤÚŮŰÜÝŘŽ"; $abc2 = "aacdeeillnoooorstuuuuyrzAACDEEILLNOOOORSTUUUUYRZ"; $xabc = strlen($abc); for($i = 0; $i < strlen($str); $i++) for($j = 0; $j < $xabc; $j++) if ($str[$i] == $abc[$j]) $str[$i] = $abc2[$j]; return $str; } ad 2) str_replace tohle umi az od verze php5 ale regularni vyrazy to zmaknou. Umi uz preg_replace() priklad: $str = "Ahoj jak se hola vola tah tohle ne"; echo preg_replace("/h/", "*", $str, 2); vystup: A*oj jak se *ola vola tah tohle ne jestli jsi myslel tohle</HTML>
-
Jj to je přesně ončo, diky
-
Richard: proc tak slozite? $abc = "áäčďéěíĺľňóôőöŕšťúůűüýřžÁÄČĎÉĚÍĹĽŇÓÔŐÖŔŠŤÚŮŰÜÝŘŽ"; $abc2 = "aacdeeillnoooorstuuuuyrzAACDEEILLNOOOORSTUUUUYRZ"; //tvoje písmenka... $text = strtr($text, $abc, $abc2); jinak viz manuál u strtr, zvláště komentáře u toho
-
<HTML>ja tohle natahl ze zdrojaku z dob valky :) ale je fakt ze je to zbytecne vlastni kdyz na to funkce vicemene uz je.. co se tyce jeste toho omezeni v str_replace tak v usercomments jsem nasel tohle: function str_replace_count($find,$replace,$subject,$count) { $subjectnew = $subject; $pos = strpos($subject,$find); if ($pos !== FALSE) { while ($pos !== FALSE) { $nC = $nC + 1; $temp = substr($subjectnew,$pos+strlen($find)); $subjectnew = substr($subjectnew,0,$pos) . $replace . $temp; if ($nC >= $count) { break; } $pos = strpos($subjectnew,$find); } // closes the while loop } // closes the if return $subjectnew; }</HTML>
-
myslím, že by malo ísť aj toto: $akcent_txt="ťžčýíé= éííéýáéáý"; $abc = array ("á","ä","č","ď","é","ě","í","ĺ","ľ","ň","ó","ô","ő","ö","ŕ","š","ť","ú","ů","ű","ü","ý","ř","ž","Á","Ä","Č","Ď","É","Ě","Í","Ĺ","Ľ","Ň","Ó","Ô","Ő","Ö","Ŕ","Š","Ť","Ú","Ů","Ű","Ü","Ý","Ř","Ž"); $abc2 = array ("a","a","c","d","e","e","i","l","l","n","o","o","o","o","r","s","t","u","u","u","u","y","r","z","A","A","C","D","E","E","I","L","L","N","O","O","O","O","R","S","T","U","U","U","U","Y","R","Z"); $no_akcent_txt = str_replace($abc, $abc2, $akcent_txt); IMHO