首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于获取数据的C#正则表达式

用于获取数据的C#正则表达式
EN

Stack Overflow用户
提问于 2015-02-05 13:44:29
回答 1查看 63关注 0票数 1

大家好,我想从这个文件中获得正则表达式的数据,这个数据是我从网络路由器上得到的

代码语言:javascript
复制
//
nvram = {
	'wan_domain': '',
	'wan_gateway': '10.10.1.1',
	'wan_gateway_get': '125.162.136.1',
	'wan_get_domain': '',
	'wan_hostname': 'Gatsu-Router',
	'wan_hwaddr': '50:46:5D:00:C8:89',
	'wan_ipaddr': '125.162.138.160',
	'wan_netmask': '255.255.255.255',
	'wan_proto': 'pppoe',
	'wan_run_mtu': '1492',
	'web_pb': ''};

//
   
wlstats = [ { radio: 1, client: 0, channel:  3, mhz: 2422, rate: 144, ctrlsb: 'none', nbw: 20, rssi: 0, noise: -86, intf: 0 }
,{ radio: 1, client: 0, channel:  149, mhz: 5745, rate: 900, ctrlsb: 'lower', nbw: 40, rssi: 0, noise: -99, intf: 0 }
];

所以我得到了这个数据

代码语言:javascript
复制
nvram = {
	'wan_domain': '',
	'wan_gateway': '10.10.1.1',
	'wan_gateway_get': '125.162.136.1',
	'wan_get_domain': '',
	'wan_hostname': 'Gatsu-Router',
	'wan_hwaddr': '50:46:5D:00:C8:89',
	'wan_ipaddr': '125.162.138.160',
	'wan_netmask': '255.255.255.255',
	'wan_proto': 'pppoe',
	'wan_run_mtu': '1492',
	'web_pb': ''};

EN

回答 1

Stack Overflow用户

发布于 2015-02-05 13:54:01

您可以使用Json.NET解析来自路由器的数据。这比使用正则表达式更容易。

根据shree.pat18的评论,这里有一个小的工作示例如何使用它:

TestJson.cs:

代码语言:javascript
复制
using Newtonsoft.Json;

namespace TestConsole.TestClasses {

    class RouterInfo {

    [JsonProperty(PropertyName = "wan_gateway")]
    public string Gateway { get; set; }

    [JsonProperty(PropertyName = "wan_run_mtu")]
    public int Mtu { get; set; }

    // add here other fields

}

class JsonTest {

    public void Test() {
        string routerData = @"{
'wan_domain': '',
'wan_gateway': '10.10.1.1',
'wan_gateway_get': '125.162.136.1',
'wan_get_domain': '',
'wan_hostname': 'Gatsu-Router',
'wan_hwaddr': '50:46:5D:00:C8:89',
'wan_ipaddr': '125.162.138.160',
'wan_netmask': '255.255.255.255',
'wan_proto': 'pppoe',
'wan_run_mtu': '1492',
'web_pb': ''}";
        RouterInfo info = JsonConvert.DeserializeObject<RouterInfo>(routerData);
        // here you can work with RouterInfo "info" object
    }
}
}

您应该使用NuGet将Json.NET库添加到您的项目中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28336962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档