从PHP中的字符串中删除特定字符
如何在 php 中检查字符串中的特定字符,例如“#”或“\”?
我真的不想使用替换,只是返回 true 或 false。
谢谢
How can I check a string in php for specific characters such as '#' or '\'?
I don't really want to use replace, just return true or false.
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
使用函数 strstr https://www.php.net/manual/en/ function.strstr.php
返回从第一次出现 Needle 到 haystack 末尾的 haystack 字符串的一部分
注意:如果您只想确定特定的 Needle 是否出现在 haystack 中,请改用更快、内存占用更少的函数 strpos()。
use the function strstr https://www.php.net/manual/en/function.strstr.php
Returns part of haystack string from the first occurrence of needle to the end of haystack
Note: If you only want to determine if a particular needle occurs within haystack , use the faster and less memory intensive function strpos() instead.
如果您只想知道字符串是否包含,可以使用
strpos
函数另一个(你的问题内容似乎表明了这一点,即使你的标题说“删除”)。注意:不要忘记使用
!==
或===
运算符,因为该函数可以返回 0 或 false,并且它们具有不同的含义。如果您想“删除”字符,
str_replace
或strtr
可能可以解决问题。You can use the
strpos
function, if you only want to know if a string contains another one (the content of your questions seems to indicate that, even if your title says "remove").Note : don't forget to use the
!==
or===
operator, as the function can return 0 or false, and those have different meaning.If you want to "remove" characters,
str_replace
orstrtr
might do the trick.您可以执行以下操作:
特别注意
!==
语法,它区分false
(表示未找到该字符)和0
code> (意味着它是在位置0
处找到的)。You can do something like this:
Note in particular the
!==
syntax, which differentiates betweenfalse
(meaning the character isn't found) and0
(meaning it was found at position0
).尝试正则表达式。
注意:您必须将反斜杠“\”转义三次。
如果您确实希望它们采用布尔格式,则可以使用 三元运算符 '?:' 这样
或者简单地转换为布尔值
Try regular expressions.
Note: You have to escape backslashes '\' three times.
If you really want them in boolean format, you can use a ternary operator '?:' as such
Or simply convert to boolean