这里是计算机科学学生。我想编写一个程序来解压缩根据游程编码的修改形式进行编码的字符串(我已经为其编写了代码)。例如,如果字符串包含“bba10”,它将解压缩为“bbaaaaaaaaaa”。如何让程序识别字符串的一部分('10')是整数?
感谢您的阅读!
最佳答案
一个简单的正则表达式就可以了。
final Matcher m = Pattern.compile("(\\D)(\\d+)").matcher(input);
final StringBuffer b = new StringBuffer();
while (m.find())
m.appendReplacement(b, replicate(m.group(1), Integer.parseInt(m.group(2))));
m.appendTail(b);
其中复制
是
String replicate(String s, int count) {
final StringBuilder b = new StringBuilder(count);
for (int i = 0; i < count; i++) b.append(s);
return b.toString();
}
关于java - 行程解压,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20131787/