正则替换数组中的某个值

怎么把1-1-1-1 替换成 1栋1单元1楼1室 怎么实现呀 求大神 帮忙 如果有别的方法也可以

什么语言也没说,js可以下面的

    var s = '1-1-1-1', i = 0, arr = ['栋', '单元', '楼', '室'];
    s = s.replace(/-/g, function () { return arr[i++] }) + arr[i];
    alert(s)

用组的方法解决:
String str="1-1-1-1";
str = str.replaceAll("(\d{1}).(\d{1}).(\d{1}).(\d{1})","$1栋$2单元$3楼$4室");
System.out.println(str);

我去打不上去、在转义一下d、两反斜杠就行

d前面少一个反斜杠
str = str.replaceAll("(\d{1}).(\d{1}).(\d{1}).(\d{1})","$1栋$2单元$3楼$4室");