01-02-2013, 11:54
|
מנהל פורומי "תכנות ובניית אתרים" ו"חומרה ורשתות"
|
|
חבר מתאריך: 25.10.01
הודעות: 42,775
|
|
באמת לא עוזר?
כי הקוד:
קוד PHP:
<?php
function count_words($string) {
// Return the number of words in a string.
$string= str_replace("'", "'", $string);
$t= array(' ', "\t", '=', '+', '-', '*', '/', '\\', ',', '.', ';', ':', '[', ']', '{', '}', '(', ')', '<', '>', '&', '%', '$', '@', '#', '^', '!', '?', '~'); // separators
$string= str_replace($t, " ", $string);
$string= trim(preg_replace("/\s+/", " ", $string));
$num= 0;
if (mb_strlen($string, 'UTF-8')>0) {
$word_array= explode(" ", $string);
$num= count($word_array);
}
return $num;
}
$str = 'נסיון אחת שתיים 123 שלוש';
echo "The string $str is " . count_words($str) . " words long.\n";
?>
פולט אצלי:
קוד:
The string נסיון אחת שתיים 123 שלוש is 5 words long.
שזה די נכון.
נכון שבניגוד לפונקציה המקורית, נראה שהוא סופר גם מספרים בתור מילים, אבל זה לא מאוד מסובך להוסיף את המספרים לרשימת התווים שמנופים בקוד הנ"ל...
גם אם לא הייתה הדוגמא, אני לא מבין מדוע צריך להתקע ואי אפשר לכתוב קוד שיעשה את זה לבד. טיפול במחרוזות זה בסיס של תכנות... ב PHP זה גם מאוד קל, כי יש המון דברים מובנים שאפשר להשתמש בהם כבסיס, מבלי להמציא את הגלגל מחדש.
|