您好,登錄后才能下訂單哦!
這篇文章主要講解了“PHP如何獲取字符串中包含的單詞數”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“PHP如何獲取字符串中包含的單詞數”吧!
方法1:借助數組
我們可以分割字符串,將字符串中的每個單詞轉為數組中的一個數組元素;然后統計數組元素個數即可。
例如我有這樣一個字符串,字符串中單詞個數為9:
$str = "the quick brown fox jumps over the lazy dog";
可以先使用explode()函數根據空格來將字符串拆分為若干個子串,然后將這些子串組合成數組并返回。
$arr = explode(' ', $str);
使用var_dump($arr)
輸出看看結果:
可以看出數組中一個元素對應字符串中的一個單詞;因此我們可以使用count()統計數組元素的個數,那么也就得到了字符串中單詞個數。下面給出實現代碼:
<?php header("content-type:text/html;charset=utf-8"); $str = "the quick brown fox jumps over the lazy dog"; $arr = explode(' ', $str); echo "字符串中單詞的個數為:".count($arr); ?>
輸出結果為:
2、使用str_word_count()函數
其實PHP中就內置了一個函數str_word_count()來計算字符串中的單詞數。
<?php header("content-type:text/html;charset=utf-8"); $str = "the quick brown fox jumps over the lazy dog"; echo "字符串中單詞的個數為:".str_word_count($str); ?>
輸出結果為:
可以看出,在上面的代碼示例中直接使用str_word_count($str)
就可以返回單詞數。下面來了解一下str_word_count()函數:
str_word_count($string,$return,$char)
函數接受1個必需參數$string
,2個可省略的參數$return
和$char
。
必需參數$string大家知道什么意思,可省略的參數$char
用于規定被認定為單詞的特殊字符,這里就不介紹了;我們來具體聊聊可省略的參數$return
。
參數$return
用于規定 str_word_count() 函數的返回值,有三種取值:
0
- 默認值,會返回找到的單詞的數目(也就是上文的結果)。
1
- 會返回包含字符串中的單詞的數組。
<?php header("content-type:text/html;charset=utf-8"); $str = "the quick brown fox jumps over the lazy dog"; $arr = str_word_count($str,1); var_dump($arr); ?>
輸出結果為:
2
- 返回一個數組,其中的鍵名是單詞在字符串中的位置,鍵值是實際的單詞。
<?php header("content-type:text/html;charset=utf-8"); $str = "the quick brown fox jumps over the lazy dog"; $arr = str_word_count($str,2); var_dump($arr); ?>
輸出結果為:
這對我們操作某個單詞的出現位置是很有幫助的。例如想要獲取指定單詞“brown”出現位置,可以使用array_search() 函數在數組中搜索某個鍵值,并返回對應的鍵名。(如果在數組中找到鍵值超過一次,則返回第一次找到的鍵值所匹配的鍵名。)
<?php header("content-type:text/html;charset=utf-8"); $str = "the quick brown fox jumps over the lazy dog"; $arr = str_word_count($str,2); echo array_search("brown",$arr); ?>
輸出結果為:
感謝各位的閱讀,以上就是“PHP如何獲取字符串中包含的單詞數”的內容了,經過本文的學習后,相信大家對PHP如何獲取字符串中包含的單詞數這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。