假設你有一個字符串,但你不知道它包含了什麼。並且你想用同一個單詞的格式化版本來替換特定單詞或單詞部分的所有出現。 例如,我有一個包含「lorem ipsum」的字符串,我想用「lorem can」替換包含「lo」的整個單詞,以便最終結果爲「lorem can ipsum」,但如果我將字符串「loreal ipsum」通過相同的功能,結果現在將是「loreal可以ipsum」。 感謝如何從PHP中的字符串中獲取特定單詞?
1
A
回答
0
$str = preg_replace('/lo(\w*)/', 'lo$1 can', $str);
這將替換 「LO」 加上 「LO」 +其他字符+任意單詞字符 「可以」
還將取代 「LO」 和 「LO可以」 - 如果你不想這樣,與RoBorg的回答改變\w*
到\w+
4
$str = preg_replace('/(\blo[a-z]+\b)/', '$1 can', $str);
的問題是:
\w
匹配數字和下劃線,它們不是真的人類語言中的單詞字符,所以它會匹配'lo_fi'或'__lo__'。- 它還會匹配不以
lo
開頭的單詞,例如'slorem',或者甚至包含以'allo'結尾的單詞。
\b
確保lo
如下的單詞斷(零寬度)和[a-z]+
確保至少一個字母字符如下「LO」。
編輯:我看到問題的文字說「包含」而不是「開始於」,在這種情況下,第一個\b
可能會被省略。
編輯2:請注意,這些解決方案都不是國際安全的。我沒有測試過這個,但是PHP的RegEx功能很強大,所以我猜測它可以工作:
$str = preg_replace('/(\blo[a-z\p{L}]+\b)/', '$1 can', $str);
相關問題
- 1. PHP:如何從字符串中獲取特定單詞
- 2. 如何在PHP中獲取特定的字符串單詞?
- 3. 如何從Postgres中的字符串中提取特定單詞
- 4. 獲取Ruby字符串中特定單詞後的單詞嗎?
- 5. PHP:在字符串中的特定單詞之後提取特定單詞?
- 6. 從字符串中獲取特定單詞,ORACLE
- 7. 從字符串獲取單詞 - PHP
- 8. 如何從字符串中去除特定字符和單詞
- 9. 如何捕獲字符串中的特定單詞?
- 10. 獲取字符串中的特定單詞
- 11. PHP從HTML字符串中的特定單詞剪切文本
- 12. 如何從字符串中刪除特定的單詞?
- 13. perl - 如何從字符串中刪除特定的單詞?
- 14. 如何從字符串中刪除特定的單詞?
- 15. 如何從字符串中刪除特定的單詞?
- 16. 如何從字符串的Arraylist中獲取特定字符?
- 17. 如何從每個單詞在字符串中刪除特定的字母 - PHP
- 18. 如何獲取字符串的單詞?
- 19. 通過字詞表從字符串中刪除特定單詞
- 20. 從NSString獲取子字符串直到到達特定單詞
- 21. 如何從PHP中的字符串變量中提取特定的字符串?
- 22. PHP獲取特定字詞內的一些字符串
- 23. PHP:試圖找出如何從字符串中提取單詞
- 24. PHP如何從短語中刪除特定的字符串/單詞?
- 25. 如何從SQL中的字符串中獲取特定部分
- 26. 如何從Lua中的字符串中獲取特定文本?
- 27. 如何從字符串使用PHP獲取特定的子字符串數字?
- 28. 如何從oracle中的字符串獲取特定數字
- 29. 如何從特殊字符串中獲取數字? PHP
- 30. 如何從字符串(url)獲取特定的字符串?