ユーザーが座標を入力するアプリがあります。
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/