Javascript 正则表达式帮助需要示例文本和陈述的目标

Javascript Regular expression help needed example text and goal stated

我在 table.

的字段中存储了一个丑陋的值

字符串 1: s:90:"a:2:{s:8:"纬度";s:18:"37.453896007474455";s:9:"longitude";s:19:"-122.28786132646483";}";

字符串 2: s:90:"a:2:{s:8:"纬度";s:18:"1.03923923929";s:9:"longitude";s:19:"-10.28786132646483";}";

字符串 3: s:90:"a:2:{s:8:"纬度";s:18:"3.455";s:9:"longitude";s:19:"-140.28786132646483";}";

什么正则表达式可以匹配所有 37.453896007474455、1.03923923929、3.455

什么正则表达式会匹配所有 -122.28786132646483、-10.28786132646483、-140.28786132646483

谢谢

无论哪种情况,句号前的数字前都可能出现减号。

您可以使用 (-?\d+(?:.\d+)?) 来匹配一个可选的减号 (-?),后跟至少一个数字 \d+,然后是 (?:\.\d+)?,这会创建一个可选的 ? 非捕获组 ?: 用于十进制 \.,后跟至少一个数字 \d+.

假设 string 总是以 s:90:"a:2:{s:8:"latitude";s:18:" 开头,要获得第一组数字,您可以使用:

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

假设第一组数字后面总是跟着 ";s:9:"longitude";s:19:",要得到第二组数字,您可以使用:

";s:9:"longitude";s:19:"(-?\d+(?:\.\d+)?)"