RegEx
メートル法で距離の値を一致させたい。この正規表現は、空白を無視して12m
、と一致する必要があります100cm
1km
2029 次
4 に答える
12
これを試して:
(?:0|[1-9]\d*)\s*(?:da|[yzafpnμmcdhkMGTPEZY])?m
于 2009-09-27T10:30:11.717 に答える
7
そして、Paulの答えを拡張して小数点以下の値を含めるには...
(\d+).?(\d*)\s*(m|cm|km)
于 2009-09-27T10:35:42.127 に答える
4
必要なものを正確に指定しなかったため、例を使用して、整数値、オプションの空白、cm、m、またはkmの単位指定子を検索することを導き出しました。つまり、これはその最も単純な例です。
/(\d+)\s*(m|cm|km)/
最初の括弧は数値をキャプチャし、次に0をスキップします-多くの空白文字は、2番目の括弧のセットで必要な単位をキャプチャする前に。
他の回答でわかるように、これを超えて10進値を取得し、さらに多くのSI単位系プレフィックスをキャプチャすることもできます。
于 2009-09-27T10:29:13.170 に答える
0
次の正規表現では、正確な数字の一致が必要です。小数点以下4桁まで。
^(\d+)[.,]?(\d{1,4})$
そしてオプションでユニット付き
^(\d+)[.,]?(\d{1,4})\s*(mm|m|cm|km)$
そしてユニット間の1つのスペース
^(\d+)[.,]?(\d{1,4})[ ]?(mm|m|cm|km)$
マッチング:
123
123,456
134.456
一致しない:
abc
abc、456
123abc
123、abc
于 2021-06-24T11:40:31.137 に答える