1
A
回答
2
無需使用原始字符串操作,正則表達式來拯救!
$string = preg_replace('/(three\K)?./s', ' ', $string);
有關使用什麼,如果有不清楚的地方,請查看PHP手冊的PCRE Pattern Syntax章細節。
1
無需使用昂貴的和/或複雜的正則表達式:
function replace_space($str, $keep, $hold) {
$str = explode($keep, $str);
foreach ($str as &$piece) {
$piece = str_repeat($hold, strlen($piece));
}
return implode($keep, $str);
}
echo replace_space('onetwothreefourfivethreefour', 'three', ' ');
測試,與在草堆多針的工作原理。
1
$first_chunk = str_repeat(' ', strpos($string, 'three'));
$last_chunk = str_repeat(' ', strlen($string) - strpos($string, 'three') - strlen($string));
$string = $first_chunk . 'three' . $last_chunk;
未測試,不處理在乾草堆,YMMV,yada yada yada多針。
+0
看起來不錯,忘了'strpos',但仍然鎖定一個整齊的線索; – powtac
相關問題
- 1. 替換除了第一個所有字符和空格
- 2. 用一個空格替換所有多空格字符除了換行符
- 3. 刪除/替換多行字符串中的所有空格,除了換行符
- 4. 除了「g」,如何用一個「」替換字符串中的所有字符?
- 5. 替換字符串的所有occurencis除了來自之間「串
- 6. 替換字符串中除一個字符以外的所有字符
- 7. 替換所有的字符串,除了兩個指標
- 8. 正則表達式替換所有除了這個字符串
- 9. 替換字符串中的所有中間字符C++
- 10. 刪除兩個單詞之間的所有字符並用空格替換
- 11. 替換空間與字符
- 12. 替換所有空格字符
- 13. 替換由JavaScript所有單詞除了一個特定字
- 14. 如何用星號替換字符串中的所有字符,空格除外?
- 15. PHP的preg_replace(從字符串替換除了字母,數字,和幾個字符的所有字符)
- 16. 替換所有的字符,除非它是一個字符串中的最後一個字符(javascript)
- 17. 替換除一個以外的所有特殊字符
- 18. 算一個字符出現的所有除了在字符串
- 19. 如何替換除一個以外的所有非空白字符(分號)?
- 20. 替換字符串中第一個字符後的所有字符
- 21. Sed替換所有字符,直到第一個空格
- 22. Perl:除了空白字符串以外的所有字符串
- 23. 替換除字母,數字,空格和下劃線之外的所有字符
- 24. 替換字符串中的所有字符不同的字符
- 25. 在JSONArray中替換空字符串的所有空值
- 26. 將所有大寫字母替換爲小寫字母,除了urlencoded字符串
- 27. 替換字符串中的所有非字母數字字符
- 28. 刪除所有的空白和所有換行符和字符
- 29. Javascript - 替換除期間以外的所有非字母數字字符
- 30. 將字符串的所有字符替換爲MSSQL中第一個字符和空格以外的星號
告訴我們你到目前爲止試過的東西... – egrunin
@egrunin,希望你很好? #quake? ''preg_replace('〜[^]〜','',$ string);' –
powtac