2017-03-27 29 views
0

誰かが私は次の数字の正規表現を提供するのに役立つことができますか?
数値、小数、または数値のいずれかをパーセントで指定できます。正規表現の数字と小数とパーセントの1つのテキストボックス

100または50.15または75%

私は\d*(\.)?\d*(%)正規表現を試しましたが、パーセンテージでのみ動作しています。
\d*(\.)\d*は数字か小数ですが、両方を組み合わせる方法を理解できませんでした。

答えて

0

あなたはこれを試すことができます。

^\d+$|^\d+\.\d+$|^\d+%$ 

説明:

  • ^\d+$数字のみ

または

  • ^\d+\.\d+$小数を値

または

  • ^\d+%$割合が数字のみ

regx demo

+1

([説明を含む] OPがそれを好きかどうかは分かりませんが、このコードスニペットは、問題を解決するかもしれないが、あなたの正規表現は、12.34パーセント – Astyan

2

あなたが最初にあなたの問題を解決し、あなたが持っているならば、助けを求めることを試みた場合にそれが良いだろうそれ以外の場合はどうやって学びますか?

次のサイトをテストする正規表現に適しています:http://regexr.com/言われていること

は、次のように動作するはずです:

0
[0-9]+\.?[0-9]*%? 

これは、仕事をします

([0-9]+)?\.?([0-9]+)\%$ 
+1

のような小数の割合をキャッチしません、 http://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)は本当にあなたの投稿の質を向上させるのに役立ちます。将来読者の質問に答えていることを覚えておいてください。そうした人々はあなたのコード提案の理由を知らないかもしれません。 – DimaSan

+1

@DimaSanそれは大丈夫です、私は次の答えのためにそれに注意します。私は後に来る他の人については考えなかった。 – Astyan

-2

あなたはこれを試すことができ

/^\d+\.?\d*\%?$/ 
3

使用この正規表現/^\d+(\.\d+)?%?$/

  • ^
  • (\.\d+)?がまたは小数部分を含んでも含まなくてもよい
  • \d+少なくとも1桁(確認およびそれ以上)で始める必要があり
  • %?または%シンボルを含んでも含まなくてもよいです
  • $末端

var re=/^\d+(\.\d+)?%?$/; 
 

 
console.log(re.test('123')); // true 
 
console.log(re.test('123.32')); // true 
 
console.log(re.test('123.32%')); // true 
 
console.log(re.test('123%')); // true 
 
console.log(re.test('123.')); // false . atlast 
 
console.log(re.test('123.%')); // false .% atlast

関連する問題