从php中的字符串中删除特定字符

时间:2009-09-07 11:39:37

标签: php char strpos

如何检查php中的字符串以查找特定字符,例如“#”或“\”?

我真的不想使用replace,只返回true或false。

由于

4 个答案:

答案 0 :(得分:3)

使用函数strstr http://us2.php.net/manual/en/function.strstr.php 返回从第一次出现针到haystack末尾的haystack字符串的一部分

注意:如果您只想确定特定针是否出现在haystack中,请使用速度更快,内存更少的函数strpos()代替。

答案 1 :(得分:3)

您可以使用strpos功能,如果您只想知道字符串是否包含另一个(问题的内容似乎表明,即使您的标题显示“删除”)< / em>的

注意:不要忘记使用!=====运算符,因为函数可以返回0或false,并且具有不同的含义。


如果您想“删除”字符,str_replacestrtr可能会有效。

答案 2 :(得分:3)

您可以这样做:

if (strpos($string, '#') !== false || strpos($string, '\') !== false) {
    // One of those two characters is in the string.
}

请特别注意!==语法,该语法区分false(意味着找不到字符)和0(意味着它位于0位置)

答案 3 :(得分:0)

尝试正则表达式。

preg_match('/[#\\\\]/', $String);

注意:你必须三次逃避反斜杠。

如果您真的希望它们采用布尔格式,那么您可以使用ternary operator '?:'

preg_match('/[#\\\\]/', $String) ? true : false;

或者只是转换为布尔值

(bool)preg_match('/[#\\\\]/', $String);