我正在编写一个php脚本来剖析从外部网页复制的信息。
我将外部数据粘贴到文本区域,该文本区域通过PHP的post函数传递。
其中一条线看起来像这样:
972日期名称信息
问题是,“972”之后的第一个空格实际上并不是一个空格。当我用针“”执行strpos功能时,它返回“Date”后面的空格位置。可能的解决方案是:
执行strpos搜索所有可能的空格。
找到一些方法让我的浏览器回显实际的空格代码,这样我就知道要为针头输入什么。
建议?
答案 0 :(得分:1)
您可以使用正则表达式拦截任何类型的空格的任何字符,加上chr(160)来拦截不间断的空格。这应该有效:
$str = "972 Date Name Information";
if (preg_match_all('/[\s'.chr(160).']/', $str, $matches, PREG_OFFSET_CAPTURE)) {
print_r($matches);
}
它应该给你以下结果:
Array
(
[0] => Array
(
[0] => Array
(
[0] => �
[1] => 3
)
[1] => Array
(
[0] =>
[1] => 8
)
[2] => Array
(
[0] =>
[1] => 13
)
)
)
其中index [1]处的数字是字符串中各种空格字符的位置。