java - 匹配位,然后读取 16 位并存储到新变量

标签 java

String bin = Long.toBinaryString(i); System.out.println(bin)

结果为:110000000000000000000000001110100100001101110110001000000001 每次我得到这个二进制字符串或另一个长度不同的字符串时,我都会有一个常量值 11010010,我想匹配它并读取匹配的二进制字符串之后的 16 位。

最终的结果应该是0001101110110001

我认为这与正则表达式有关。

谢谢。

最佳答案

这是一个基本的 indexOfsubstring 问题。你尝试过像下面这样的东西吗?

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/

相关文章:

java - 在 Centos 6 上使用 Jetty 设置 Solr 问题

java - 从 javabean 类更新数据库是否合适?

java - 将类文件(字节)解压到 ASM ClassNode 中

java - 是否可以在 Servlet 3.0 环境中在外部 Jar 和 War 之间共享相同的 MVC?

在 Android 上使用 cache2k 时出现 java.lang.NoClassDefFoundError

java - b[i]=新按钮(月[i]);我可以像这样将变量传递给 java 中的 Button 构造函数吗?

java - Tomcat中基于请求的入侵检测

java - Servlet 与文件系统交互 : storing files and generating URLs for clientside access

java - 用户按下图像按钮打开 URL,但不会出现新窗口

java - 方法内的访问修饰符