文字列を置き換えたい。文字列は、
var str='d d day'
またはなどにすることができます。単一の場合は、何らかの数値(1など)'day d d '
に置き換えたいと思います。d
反映されるべきではありません。その後に他の文字が続きます。つまり、日
'd d day'
---------->'1 1 day'
'day d d '
-------------->'day 1 1 '
ありがとう
文字列を置き換えたい。文字列は、
var str='d d day'
またはなどにすることができます。単一の場合は、何らかの数値(1など)'day d d '
に置き換えたいと思います。d
反映されるべきではありません。その後に他の文字が続きます。つまり、日
'd d day'
---------->'1 1 day'
'day d d '
-------------->'day 1 1 '
ありがとう
str.replace(/\b[a-z]\b/g,'1');//any character
str.replace(/\bd\b/g,'1');//d specific
単純な置換ループ
a = 'd d day'
b = a;
while (b.indexOf('d ') != -1){
b = b.replace('d ', '1 ')
}
次に、b を a に再割り当てできます。
使用できますsplit
:
var str = 'd d day',
split = str.split(' '),
toReplace = 1,
ret;
for(var i = 0; i < split.length; i++) {
if (split[i].length > 1) continue;
split[i] = toReplace;
}
ret = split.join(' ');
d を次の 1 つのスペースに置き換える必要がありますstr.replace('d ','1')
または、正規表現で次を使用できます
str.replace(/\bd\b/,'1 ')