如何使用Regex在字符串中获得逗号分隔的双值
本文关键字:分隔 Regex 何使用 字符串 | 更新日期: 2023-09-27 18:26:09
我想用Regex
检索以下字符串中的Latitude和Longitude值。请帮我做这个。
<script type="text/javascript">
function initialize() {
var mapOptions = {
zoom: 18,
center: new google.maps.LatLng(0.6213000841833666, 73.46202224493027)
};
}
</script>
以下是我迄今为止所做的尝试。
var data = await Client.GetResponse(URL);
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(data);
var script = doc.DocumentNode.Descendants()
.Where(x => x.Name == "script").FirstOrDefault();
if (script != null) {
Match match = Regex.Match(script.InnerText, @"LatLng([A-Za-z0-9'-]+),$", RegexOptions.IgnoreCase);
if (match.Success) {
// blah blah
}
}
Match m = Regex.Match(xml, @"LatLng'((['d'.]+)','s*(['d'.]+)')");
if(m.Success)
{
Trace.WriteLine(string.Format("Lat:{0} - Lng:{1}", m.Groups[1].Value, m.Groups[2].Value));
}
可能会对您的有所帮助
using System.Text;
using System.Text.RegularExpressions;
namespace ConsoleApplication11
{
class Program
{
static void Main(string[] args)
{
var strings = @"<script type='text/javascript'>
function initialize() {
var mapOptions = {
zoom: 18,
center: new google.maps.LatLng(0.6213000841833666, 73.46202224493027)
};
}
</script>";
var group = Regex.Match(strings,"maps.LatLng''((?<lat>.*?),''s*(?<long>.*?)'')",RegexOptions.IgnoreCase).Groups;
var lat = group["lat"].Value;
var lon = group["long"].Value;
}
}
}