我從數據庫中獲取字符串,然後使用字符串構建URL。我的問題是,一些字符串將有像<> &> & {} *一般特殊字符,但字符串也可能有字符串。我怎麼會用破折號替換空格,並從字符串中完全刪除和特殊字符?PHP - 字符串操作刪除特殊字符並替換空格
4
A
回答
3
隨着str_replace
:
$str = str_replace(array(' ', '<', '>', '&', '{', '}', '*'), array('-'), $str);
注:
如果替換爲的值小於搜索,則替換值的其餘部分將使用空字符串。
8
使用preg_replace
只能存放在一個字符串字母和數字:
$string = preg_replace('/[^a-zA-Z0-9-]/', '', $string);
您可以使用str_replace
用來替換空間 -
$string = str_replace (" ", "-", $string);
請看下面的文章:
+0
如果你認爲在A-Z之外沒有字母字符,這會起作用;取決於你的情況,這可能是也可能不是太天真的假設。 – Piskvor 2011-08-01 10:04:51
1
str_replace(' ','-',$string);
字母:
$output = preg_replace("/[^A-Za-z0-9]/","",$input);
如果你想保持字符
:
htmlspecialchars($string);
2
1)的iconv
2)更換附加符號與空字符串
3更換非字母字符)用短劃線
4)將所要的短劃線字符字符串替換空間(也可以前修剪串操作)
例如,如果您使用UTF-8編碼:
setlocale(LC_ALL, 'fr_CA.utf8');
$str = "%#dŝdèàâ.,d s#$4.sèdf;21df";
$str = iconv("UTF-8", "ASCII//TRANSLIT", $str); // "%#dsdeaa.,d s#$4.sedf;21df"
$str = preg_replace("`[^\w]+`", "", $str); // "dsdeaad s4sedf21df"
$str = str_replace(" ", "-", $str); // "dsdeaad-s4sedf21df"
$str = trim($str, '-'); // "dsdeaad-s4sedf21df"
相關問題
- 1. PHP代碼字符串替換特殊字符刪除字符
- 2. PHP字符串操作 - 替換和刪除字符
- 3. 替換字符串的特殊字符爲空字符串
- 4. 使用Pentaho刪除特殊字符 - 替換爲字符串
- 5. python用字符串之間的特殊字符替換空格
- 6. Visual c#從字符串中替換特殊字符和空格
- 7. 從javascript中的字符串替換特殊字符和空格
- 8. 從字符串中刪除空格以外的特殊字符
- 9. 從字符串中刪除空格和特殊字符
- 10. 用空格替換特殊字符
- 11. 替換特殊字符或空格 -
- 12. 替換特殊字符php
- 13. PHP替換特殊字符
- 14. 用特殊字符替換字符串
- 15. 替換PHP中的特殊字符串
- 16. 刪除特殊字符php
- 17. Php字符串替換爲符號和特殊字符
- 18. 轉換爲字符串,刪除特殊字符和更換
- 19. 用特殊字符替換字符串中的字符串
- 20. Powershell用連字符替換空格和特殊字符
- 21. 匹配並替換子字符串,而忽略特殊字符
- 22. 查找並替換字符串中的特殊字符
- 23. 解碼序列化字符串並替換特殊字符
- 24. 從字符串中刪除除空格之外的特殊字符?
- 25. 替換PHP字符串中的特殊字符的問題
- 26. 如何用PHP替換字符串中的特殊字符?
- 27. 使用PHP替換字符串中的所有特殊字符
- 28. PHP替換字符串中的特殊字符
- 29. 字符串操作,用(空格)替換「」空格
- 30. 字符串替換操作
這可能是更容易使用進行urlencode()。它使得在URL中使用字符串安全。 – mellowsoon 2010-10-23 18:07:13