我从数据库中获取字符串,然后使用字符串构建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