2016-07-14 15 views
-3

テーブル内のフィールドに醜い値を格納しています。Javascript正規表現の助けが必要なテキストと目標の例

文字列1: S:90: ":2:{S:8:" 緯度 "; S:18:" 37.453896007474455 "; S:9:" 経度 "; S:19:" - 122.28786132646483" 。 } "; 012: "2:{s:8:"緯度 "; s:18:" 1.03923923929 "; s:9:"経度 "; s:19:" -10.28786132646483 "; } ";

はstring3: S:90: ":2:{S:8:" 緯度 "; S:18:" 3.455 "; S:9:" 経度 "; S:19:" - 140.28786132646483" 。 } "; -122.28786132646483の全てにマッチするどのような正規表現37.453896007474455の全てにマッチするどのような正規表現

、1.03923923929、3.455

、-10.28786132646483、-140.28786132646483

は、いずれの場合も、あなたにマイナス記号を

ありがとうございました期間の前に数字の前に表示されることがあります。あなたは、少なくとも一つの数\d+続く任意マイナス(-?)を、一致する(-?\d+(?:.\d+)?)を使用することができ

+0

データはどこから来ていますか?代わりにJSONを取得する可能性がありますか、またはパーサライブラリを提供していますか? –

答えて

0

、少なくとも一つの数\d+続く小数\.ための任意?非捕捉グループ?:を作成する、(?:\.\d+)?が続きます。

s:90:"a:2:{s:8:"latitude";s:18:"(-?\d+(?:\.\d+)?)" 

の数字の最初のセットは、常に";s:9:"longitude";s:19:"が続いていると仮定すると、数字の第2のセットを取得するには:stringを想定し

はいつもあなたが使用することができ、数字の最初のセットを取得するために、s:90:"a:2:{s:8:"latitude";s:18:"で始まります

";s:9:"longitude";s:19:"(-?\d+(?:\.\d+)?)" 
関連する問題