tôi muốn thay thế chỉ mục cuối cùng của dấu phẩy (,
) bằng chuỗi với and
.Thay thế chỉ mục cuối cùng, có và trong jQuery/JavaScript
ví dụ: a,b,c
với 'a,b and c'
ví dụ q,w,e
với q,w and e
tôi muốn thay thế chỉ mục cuối cùng của dấu phẩy (,
) bằng chuỗi với and
.Thay thế chỉ mục cuối cùng, có và trong jQuery/JavaScript
ví dụ: a,b,c
với 'a,b and c'
ví dụ q,w,e
với q,w and e
lastIndexOf
thấy chỉ số cuối cùng của chuỗi tham số truyền vào trong đó.
var x = 'a,b,c';
var pos = x.lastIndexOf(',');
x = x.substring(0,pos)+' and '+x.substring(pos+1);
console.log(x);
bạn cũng có thể sử dụng chức năng này
function replace_last_comma_with_and(x) {
var pos = x.lastIndexOf(',');
return x.substring(0, pos) + ' and ' + x.substring(pos + 1);
}
console.log(replace_last_comma_with_and('a,b,c,d'));
regex này nên thực hiện công việc
"a,b,c,d".replace(/(.*),(.*)$/, "$1 and $2")
Hãy thử như sau
var x= 'a,b,c,d';
x = x.replace(/,([^,]*)$/, " and $1");
Hãy thử
var str = 'a,b,c', replacement = ' and ';
str = str.replace(/,([^,]*)$/,replacement+'$1');
alert(str)
Một vòng lặp đơn giản sẽ giúp bạn ra ngoài
đầu tiên tìm ra chỉ số của tất cả, trong chuỗi của bạn sử dụng,
var str = "a,b,c,d,e";
var indices = [];
for(var i=0; i<str.length;i++) {
if (str[i] === ",") indices.push(i);
}
indices = [1,3,5,7] as it start from 0
len = indices.length()
str[indices[len - 1]] = '.'
này sẽ giải quyết được mục đích của mình.