首页 > 解决方案 > 如何从 php 中的字符串中获取所需的位?

问题描述

我有一个转换为二进制字符串的数据帧。我需要从该字符串中提取特定位。有人可以告诉我该怎么做吗?

我有这个二进制字符串并将这个字符串拆分为数组。我能够访问每个位,但无法从中获取块。

$str="11110000111100000001 101010101010 0010 101110111011 ";

print_r(str_split($str));

我想从字符串中以粗体显示特定的位并打印出来。

$var=101010101010;
echo ($var);
$var2=101110111011;
echo ($var2);

这是需要的类型,但无法理解如何从字符串中获取它。

标签: phphtmlajax

解决方案


你可以使用preg_match它。这将找到您正在寻找的所有特定块并将它们列出在一个数组中。

$str="11110000111100000001 101010101010 0010 101110111011";
preg_match_all("/(101010101010)|(101110111011)/", $str, $matches);
var_dump($matches[0]); //0th index gives you all the matches

这将为您提供如下结果:

array(2) { [0]=> string(12) "101010101010" [1]=> string(12) "101110111011" }

然后,您可以循环遍历数组并根据需要打印每个值:

foreach ($matches[0] as $match) {
    echo $match.PHP_EOL;    
}

推荐阅读