Ответ 1
Это можно сделать, используя функцию обратного вызова для замены regex.
var s1 = "abC...ABc..aBC....abc...ABC";
var s2 = s1.replace(/abc/ig, function (match) {
return "#" + match + "#" ;
}
);
alert(s2);
Вот моя проблема. У меня есть строка со смешанным футляром. Я хочу искать независимо от случая, а затем заменять совпадения некоторыми символами с каждой стороны совпадений.
Например:
var s1 = "abC...ABc..aBC....abc...ABC";
var s2 = s.replace(/some clever regex for abc/g, "#"+original abc match+"#");
Результат в s2 должен выглядеть следующим образом:
"#abC#...#ABc#..#aBC#....#abc#...#ABC#"
Можно ли это сделать с помощью регулярного выражения? Если да, то как?
Это можно сделать, используя функцию обратного вызова для замены regex.
var s1 = "abC...ABc..aBC....abc...ABC";
var s2 = s1.replace(/abc/ig, function (match) {
return "#" + match + "#" ;
}
);
alert(s2);
Это можно сделать, используя обратную ссылку:
var s2 = s.replace(/(your complex regex)/g, "#$1#")
если вы хотите совместить "abc" в любом случае:
var s2 = s.replace(/(abc)/ig, "#$1#")
Вы также можете сделать это
yourString.replace(/([a-z]+)/ig, "#$1#")