ユーザーが座標を入力するアプリがあります。
DBおよびほとんどのマッピングソフトウェア123.1234
では、古い形式ではなく、lat / lng(例)に10進表記を使用します。34N 40' 50.12"
フォームに入力された値が文字列ではなくfloatであることをテストする必要があります。ただし、parseFloatを使用34N 40' 50.12"
すると34が返されます。これは、ほとんどのテストを使用して検証されます。
これが私が試していることです。これは、ここで見つかったいくつかの非常に巧妙なソリューションのマッシュアップですが、これまでのところ、すべてのケースで適切に機能させることはできません。私がテストしている基本的なケースは次のとおりです。
123.1234
- 有効'123.1234'
- 有効34N 40' 50.12"
- 無効'34N 40' 50.12"'
- 無効123
- 有効'123'
- 有効
これが私が試したことのjsfiddleです:http://jsfiddle.net/zfwAj/