2017-10-09 5 views
0

私は、文字列からすべてのピリオドを削除しますが、例えば、数字の中に小数点を維持する必要があります。文字列からすべての完全停止を除外しますが、小数点は数値で保持しますか?

'This 12.6 decimal point should stay. But full stops should go.' --> 'This 12.6 decimal point should stay But full stops should go'

私は「正規表現、置き換えると正しい方法だと思いますが、することができます正しいパターンがうまくいくように見える。 助けをお祈りします。否定先読みアサーション(?!...)

+0

理想的に最も簡単な方法は、*。*の前と後の数(0-9)をチェックすることと*それが残って聞かせて、他のすべてのを削除します。* – BanelingRush

答えて

1

var str = 'This 12.6 decimal point should stay. But full stops should go.', 
 
    result = str.replace(/\.(?!\d)/g, ''); 
 

 
console.log(result);


\.(?!\d)から.は、あなたが空白のための肯定先読みを取ることができる桁

0

が続いていないことを保証しますまたは文字列の終わりに移動し、見つかった点のみをe空の文字列。これを行うには

var string = 'This 12.6 decimal point should stay. But full stops should go.' 
 

 
string = string.replace(/\.(?=\s|$)/g, ''); 
 

 
console.log(string);

関連する問題