Php 隐藏的空白字符导致preg_match返回false
我有一个奇怪的问题,我道歉,如果标题没有太多的意义,因为我似乎无法正确的话 基本上,我试图检查某个字符串是否只是数字,为此我使用regluar表达式Php 隐藏的空白字符导致preg_match返回false,php,regex,Php,Regex,我有一个奇怪的问题,我道歉,如果标题没有太多的意义,因为我似乎无法正确的话 基本上,我试图检查某个字符串是否只是数字,为此我使用regluar表达式 preg_match("/^[0-9]+$/", $ordernumber[1]); 从调试中很难解释这一点。我了解到,$ordernumber[1]当var转储$ordernumber[1]中只有5个数字时,字符串长度为6,应该是“41720” 这让我相信,在这个字符串中有一个空白字符,它在正则表达式中没有被考虑 如何找出字符串中的空白/特殊字
preg_match("/^[0-9]+$/", $ordernumber[1]);
从调试中很难解释这一点。我了解到,$ordernumber[1]
当var转储$ordernumber[1]
中只有5个数字时,字符串长度为6,应该是“41720”
这让我相信,在这个字符串中有一个空白字符,它在正则表达式中没有被考虑
如何找出字符串中的空白/特殊字符?
附件是转储的图片以及0/false的preg匹配结果。
注意字符串的长度
谢谢你的阅读
刚刚知道我是否使用了preg_match(“/^[0-9]+$\D/”,$ordernumber[1])代码>\D(非数字),然后它确实返回true,这解决了我的问题,但如果有人知道如何找到它,我仍然想知道它是什么字符
下面的答案将从字符串的开头和结尾修剪空白字符,它实际上可以实现我想要的功能
尝试将正则表达式修改为
preg_match("/^[0-9]+$/", trim($ordernumber[1]));
尝试将正则表达式修改为
preg_match("/^[0-9]+$/", trim($ordernumber[1]));
尝试将正则表达式修改为
preg_match("/^[0-9]+$/", trim($ordernumber[1]));
尝试将正则表达式修改为
preg_match("/^[0-9]+$/", trim($ordernumber[1]));
如果您想知道字符串中的字符,只需执行以下操作:
echo bin2hex($string);
如果您想知道字符串中的字符,只需执行以下操作:
echo bin2hex($string);
如果您想知道字符串中的字符,只需执行以下操作:
echo bin2hex($string);
如果您想知道字符串中的字符,只需执行以下操作:
echo bin2hex($string);
您好,谢谢,我知道在哪里编辑正则表达式,但这将完全符合我的要求,所以我接受这个答案。感谢您提供有用功能的信息!您好,谢谢,我知道在哪里编辑正则表达式,但这将完全符合我的要求,所以我接受这个答案。感谢您提供有用功能的信息!您好,谢谢,我知道在哪里编辑正则表达式,但这将完全符合我的要求,所以我接受这个答案。感谢您提供有用功能的信息!您好,谢谢,我知道在哪里编辑正则表达式,但这将完全符合我的要求,所以我接受这个答案。感谢您提供有用功能的信息!