java - Java中的字符串操作: split string after numbers

标签 java string

我的字符串具有这种形式 XxYxZx

X、Y 和 Z 是字符,x 是数字,范围为 0-999。

我想以这种形式分割这个字符串。如何做到这一点?

  1. ××
  2. Yx
  3. Zx

示例:

 Input:  "A155B45C77D89" 
 Output: "A155", "B45", "C77", "D89"

最佳答案

String myString="A155B45C77D89";
String[] parts = myString.split("(?<=\\d)(?=\\p{Alpha})");
System.out.println(Arrays.toString(parts));

输出:

[A155, B45, C77, D89]
<小时/>

说明:

String.split与正则表达式一起使用。正则表达式(?<=\d)(?=\p{Alpha})表示“匹配所有子字符串前面是数字,后面是字母字符

在字符串中,例如 "A155B45C77D89" ,该表达式与子字符串匹配

A155 B45 C77 D89
    ^   ^   ^
  here  |   |
       here |
            |
        and here

关于java - Java中的字符串操作: split string after numbers,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7283223/

相关文章:

java - Libgdx 子弹光线转换永远不会碰撞

java - 数据绑定(bind)到未知类型的容器

java - 为什么 H2 数据库文件增长得比数据大得多?

swift - 使用 Swift 的字符串中子字符串的索引

c++ - 在尊重 BOM 的同时匹配 Unicode 代码点的约定?

java - 使用正则表达式将字符串拆分为 3 部分

java - 如何在Java中使用jsoup在特定的html标签中插入值?

java - 如何将SUN jvm迁移到IBM jvm

java - 有效数字字符串上的 NumberFormatException

string - 读取文件搜索字符串并打印其路径