出力用に分割する必要がある次のスティング入力があります。例1.5 ccまたは1.5cc 次のコードを使用して、入力文字列を区切るスペースに基づいて、現在これを行っています。
var immunization = msg['dose_size'].toString().trim();
immunization = immunization.split(' ');
var amount = immunization[0];
var unit = immunization[1];
ただし、テストでは、入力が常にそのようにフォーマットされているとは限らず、スペースが欠落している場合があるという事実に遭遇しました。したがって、スペースのない入力の出力は 1.5cc で、2 番目の出力は空です。
\d*.?\d+ のような正規表現を使用してみましたが、それは機能しますが、1.5 で一致が検出されるため、最初の出力では空の値が取得され、2 番目の出力では "cc" が取得されます。両方が必要です。 .
助言がありますか?
ありがとう。