String bin = Long.toBinaryString(i); System.out.println(bin)
结果为:110000000000000000000000001110100100001101110110001000000001 每次我得到这个二进制字符串或另一个长度不同的字符串时,我都会有一个常量值 11010010,我想匹配它并读取匹配的二进制字符串之后的 16 位。
最终的结果应该是0001101110110001
我认为这与正则表达式有关。
谢谢。
最佳答案
这是一个基本的 indexOf
和 substring
问题。你尝试过像下面这样的东西吗?
String s = Long.toBinaryString(432345579867562500l);
int i = s.indexOf("11010010");
String subStr = null;
if(i>0){
subStr = s.substring(i+8,i+8+16);
}
System.out.println(subStr);
//0001101110110001 //output
关于java - 匹配位,然后读取 16 位并存储到新变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58656163/