我有一个字符串“ OR-xxxxxxxx-001-01”。 我需要将其拆分为“ OR-xxxxxxx-001”和“ 01”。是否可以不通过'-'拆分并再次串联??
答案 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("-(?=[^-]+$)");
[^-]
:除-
以外的任何字符。+
:重复一次或多次$
:在字符串的末尾(?= ... )
用于正向预看,因此拆分不会将其删除。这意味着只有括号外的-
充当分隔符。PS:在Java中。