2016-11-17 10 views
0

置換機能を使用して文字列の長さを制限する方法を教えてください。JavaScriptでドットと置換機能を使用する最大長の正規表現

私は、このパターンのようなだけ刺さを許可する必要があります。ドットの前11.11、99.99、100.00

1-3の数字、1つのドットとドットの後2つの数字を。

私はこのようなだけで何かを持っている:.の両側をテストするために交代|演算子を使用して

value = value.replace(/[^\d.]/, ""); 
+2

あなたがしようとしていることをよりよく説明する必要があります。あなたの質問はあいまいです...例を追加してみてください。 – fortran

+0

そのパターンと一致しない*すべての文字列を拒否/ – MaxArt

+0

あなたの説明に合ったパターンがあります:1桁から3桁の数字の後に2桁の数字が続くパターンです: '/ \ d {1,3} \。\ d {2} /'必要。 – dsh

答えて

0

var str="11.11, 99.99, 100.00, 1333.05, 44.999" 
 
console.log(str.replace(/([, ]*\d{4,}\.\d*|\d*\.\d{3,})[, ]*/g, ""));

説明:

  • [, ]*:4以上のドットに続く数字と数字の任意の数(ドットの前に4つの以上の数字との一致数)
  • \d*\.\d{3,}:桁の任意の数,又は空間
  • \d{4,}\.\d*任意の数最後の二つのパターンのいずれかが任意,またはスペースが続く検出された場合はドットと
  • (ドットの後に3つの以上の数字との一致数)を3桁以上続いて、空の文字列に置き換え""
関連する問題