NodeJS在更大的字符串中获取字符串的索引

时间:2015-04-07 16:46:14

标签: javascript string node.js

基本上...

我有一个很大的BUFFER变量,例如可能是这样的:

  

000000030035c708000000094b696e672053686976000000020000006e000000000000032a0000001400000000000000010000000101000000000000000101000000030035c708

然后我有一个较小的字符串,它以较大字符串中动态找到的大小开始。

例如它可能是:

  

4b696e672053686976000000020000006e000000000000032a0000001400000000000000010000000101000000000000000101000000030035c708

或者可能是

  

000000020000006e000000000000032a0000001400000000000000010000000101000000000000000101000000030035c708

如何找到新字符串的起始位置?

对于第一个例子,我需要数字" 24"存储为变种。

对于第二个,我需要我需要的变量" 42"存储

这是如何实现的?我知道它与查找索引有关,但我不确定如何。

2 个答案:

答案 0 :(得分:0)

使用javascript string.indexOf()应该返回找到字符串的位置。

例如

var str = "Hello world, welcome to the universe.";
var n = str.indexOf("welcome");

“n”将为13

答案 1 :(得分:0)

我试过这个似乎有效:

var biggerBuffer = new Buffer("abcdefghijklmnopqrstuvwxyz");
var smallerBuffer = new Buffer("ijk");

var startIndex, endIndex;

startIndex = String.prototype.indexOf.call(biggerBuffer, smallerBuffer);
endIndex = smallerBuffer.length() + startIndex;