Мисоли 46. Дар файли матнии додашуда дар таркиби калимаҳо ҳам ҳарфҳо ва ҳам рақамҳо буда метавонанд. Ҳамаи рақамҳоеро, ки дар таркиби калимаи дарозтарин ҳастанд, бо рамзи "*" иваз намоед. Агар чунин калимаи дарозтарин якчандто бошад, ин амалро нисбати ҳамаашон иҷро намоед.
<?php // Калима гуфта маҷмӯи рамзҳоеро меномем, ки // аз дигар маҷмӯъ бо рамзи пробел ҷудо карда шудааст. // массиви рақамҳо $arr_digits = array('0','1','2','3','4','5','6','7','8','9'); // матни дар файл бударо ба тағйирёбанда мегирем $row_data = file_get_contents('test2.txt'); // аз матн калимаҳоро ҷудо карда ба массив мебахшем $arr_data = explode(' ', $row_data); $max = strlen($arr_data[0]); foreach($arr_data as $w) { $word_length = strlen($w); if($word_length > $max) $max = $word_length; } echo "<p>Калимаи дарозтарин:<br>"; foreach($arr_data as $w) if(strlen($w) == $max) { $longest_word[] = $w; echo $w, "<br>"; } // Иваз намудани рақам бо рамзи * foreach($longest_word as $w) { $w = str_replace($arr_digits, '*', $w); echo $w,"<br>"; } ?>