我有这个 node.js 缓冲区。
var test_buf = "5E4D802158D002001022201022AB778899A1B2C3";
var buffer_hex = new Buffer(test_buf, "hex");
我想在 buffer_hex
中搜索字节模式 77 88 99
是否存在。来自教程 http://www.tutorialspoint.com/nodejs/nodejs_buffers.htm ,我找不到合适的 Buffer 函数来使用。有什么建议么?
最佳答案
您可以使用 buffer_hex.<a href="https://nodejs.org/api/buffer.html#buffer_buf_includes_value_byteoffset_encoding" rel="noreferrer noopener nofollow">includes()</a>
(或 .indexOf()
,如果您需要偏移量)在缓冲区内查找特定值。 .includes()
接受字符串、数字或其他缓冲区:
值得注意的是 .includes()
从 Node 5.3.0 开始可用。
console.log(buffer_hex.includes("778899", 0, "hex")); // boolean
console.log(buffer_hex.indexOf("778899", 0, "hex")); // number
请注意new Buffer()
自 Node 6 起已弃用。您应该使用 Buffer.from()
而不是那些版本。
关于node.js - 在 node.js 缓冲区中搜索字节模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38224800/