如何删除所有特殊字符在开始(首字母应该是字母数字)使用PHP的字符串?请删除所有特殊字符在使用PHP的字符串开始
$ String =“+ &,Hello + {+ + $ world”;
删除后的字符串
该字符串应该成为“你好+ {+ + $世界”
帮我开始所有特殊字符。
如何删除所有特殊字符在开始(首字母应该是字母数字)使用PHP的字符串?请删除所有特殊字符在使用PHP的字符串开始
$ String =“+ &,Hello + {+ + $ world”;
删除后的字符串
该字符串应该成为“你好+ {+ + $世界”
帮我开始所有特殊字符。
这将替换在开始的时候一切是不是字母:
preg_replace('/^([^a-zA-Z0-9])*/', '', $string);
UPDATE:
如果同时需要在开始和字符串的结尾处使用该修剪非字母数字字符:
<?php
$string = "++&5Hello ++f s world6f++&ht6__) ";
echo preg_replace('/(^([^a-zA-Z0-9])*|([^a-zA-Z0-9])*$)/', '', $string);
试试这个
preg_replace('/[^a-zA-Z0-9_ %\[\]\.\(\)%&-]/s', '', $String);
否这不起作用。 – soavahaf 2013-03-25 10:19:03
正确地询问您的问题 – 2013-03-25 10:32:59
尝试使用trim
的详细信息,请参阅本http://php.net/manual/en/function.trim.php
从字符串的开始删除您可以使用ltrim
http://www.php.net/manual/en/function.ltrim.php
为remove从字符串就可以结束使用rtrim
http://www.php.net/manual/en/function.rtrim.php
代码
$String = "+&,Hello+{+ +$world";
echo ltrim($String,"&+,");
您可以在LTRIM为remove从第一个字符串的
使用装饰增加更多的个性 - 它是一个内置功能: http://php.net/manual/en/function.trim.php
否这是行不通的 – soavahaf 2013-03-25 10:40:52
我想使用LTRIM将会更有用,因为您希望在字符串开头删除:http://www.php.net/manual/en/function.ltrim.php
<?php
function string_cleaner($result)
{
$result = strip_tags($result);
$result = preg_replace('/[^\da-z]/i', ' ', $result);
$result = preg_replace('/&.+?;/', '', $result);
$result = preg_replace('|%([a-fA-F0-9][a-fA-F0-9])|', ' ', $result);
$result = preg_replace('|-+|', ' ', $result);
$result = preg_replace('/_+/', ' ', $result);
$result = preg_replace('/&#?[a-z0-9]+;/i','',$result);
$result = preg_replace('/[^%A-Za-z0-9 _-]/', ' ', $result);
$result = preg_replace('/^\W+|\W+$/', '', $result);
$result = preg_replace('/\s+/', ' ', $result);
$result = trim($result, ' ');
return $result;
}
?>
<?php
echo string_cleaner($content);
?>
告诉我匹配的URL PLease? – soavahaf 2013-03-25 10:24:39