Câu trả lời:
var str = 'asd-0.testing';
var regex = /(asd-)\d(\.\w+)/;
str = str.replace(regex, "$11$2");
console.log(str);
Hoặc nếu bạn chắc chắn sẽ không có bất kỳ chữ số nào khác trong chuỗi:
var str = 'asd-0.testing';
var regex = /\d/;
str = str.replace(regex, "1");
console.log(str);
sử dụng str.replace(regex, $1);
:
var str = 'asd-0.testing';
var regex = /(asd-)\d(\.\w+)/;
if (str.match(regex)) {
str = str.replace(regex, "$1" + "1" + "$2");
}
Chỉnh sửa: chuyển thể liên quan đến bình luận
Tôi sẽ lấy một phần trước và sau những gì bạn muốn thay thế và đặt chúng ở hai bên.
Giống:
var str = 'asd-0.testing';
var regex = /(asd-)\d(\.\w+)/;
var matches = str.match(regex);
var result = matches[1] + "1" + matches[2];
// With ES6:
var result = `${matches[1]}1${matches[2]}`;