str.replace('^0','');
ПОчему нельзя сделать вот так, или как то похоже, почему надо специально заводить переменную RegExp или писать не в кавычках и в / /
можно ли это как-то обойти, чтобы всё писать в кавычка без новой переменной?
str="0 1 10 0 10 10 1";
i=str.replace('^0','');
alert(i);
|
str="0 1 10 0 10 10 1";
i=str.replace(new RegExp('^0'),'');
alert(i);
|
хм, вы о чем, чем вам // не угодили?
alert("0 1 10 0 10 10 1".replace(/^0/, ''));
|
Потому что необязательно использовать регулярное выражение, можно просто заменить подстроку.
alert("aabbcc".replace("bb", "11"));
|
А если быдет такой вариант
window.str="0 1 10 10 20 0";
function change(a)
{
return window.str.replace("(^|\\s)"+a+"($|\\s)",'.......');
}
alert(change('1'));
|
то нифига не будет
|
ВОт то и оно что хочется именно такой вариант :)
|
Чем оно хочется?
|
В PHP есть str_replace и ereg_replace, а ту все в один метод объединили, поэтому для агрументов типа string и regexp разное поведение.
Ну если сильно хочется, то можно добавить свой метод:
String.prototype.replaceEx = function (search, flags, replace) {
if (arguments.length == 2) {
replace = flags;
flags = undefined;
}
return this.replace(new RegExp(search, flags), replace);
};
alert("aa bb cc aa".replaceEx("aa$", "ee"));
|
Спасибо Октан, эх если здесь можно было не ограничено ставить +
я бы тебе ёже тысяч на 100 поставил :thanks: |
| Часовой пояс GMT +3, время: 17:08. |