拆分操作而无需缩影

时间:2018-10-30 10:06:07

标签: javascript java

我有一个字符串“ OR-xxxxxxxx-001-01”。 我需要将其拆分为“ OR-xxxxxxx-001”和“ 01”。是否可以不通过'-'拆分并再次串联??

3 个答案:

答案 0 :(得分:1)

在Java中,使用lastIndexOf

String string = "OR-xxxxxxxx-001-01";
int lastDash = string.lastIndexOf('-');

String prefix = string.substring(0, lastDash);  // OR-xxxxxxx-001
String suffix = string.substring(lastDash + 1); // 01

答案 1 :(得分:0)

此解决方案适用于JavaScript(Java和JavaScript并非同一事物)。

由于您不想分割-可以使用索引来分割。您尚未指定长度是否固定(此解决方案取决于该长度),但这应该可以解决问题:

t = 'OR-xxxxxxxx-001-01'
str = t.slice(0, 12) + t.slice(16);

会给str = 'OR-xxxxxxxx-01'

答案 2 :(得分:0)

您可以使用正向查找的拆分:

String str = "OR-xxxxxxxx-001-01";
String[] split = str.split("-(?=[^-]+$)");
  • [^-]:除-以外的任何字符。
  • +:重复一次或多次
  • $:在字符串的末尾
  • 然后(?= ... )用于正向预看,因此拆分不会将其删除。这意味着只有括号外的-充当分隔符。

Try it online.

PS:在Java中。