如何检查php中的字符串以查找特定字符,例如“#”或“\”?
我真的不想使用replace,只返回true或false。
由于
答案 0 :(得分:3)
使用函数strstr http://us2.php.net/manual/en/function.strstr.php 返回从第一次出现针到haystack末尾的haystack字符串的一部分
注意:如果您只想确定特定针是否出现在haystack中,请使用速度更快,内存更少的函数strpos()代替。
答案 1 :(得分:3)
您可以使用strpos
功能,如果您只想知道字符串是否包含另一个(问题的内容似乎表明,即使您的标题显示“删除”)< / em>的
注意:不要忘记使用!==
或===
运算符,因为函数可以返回0或false,并且具有不同的含义。
如果您想“删除”字符,str_replace
或strtr
可能会有效。
答案 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);