C#正则表达式的运用问题,判断输入的字符串是否符合标准。
现在我有一段字符串如下:Headend:0NOTEIMACAttenuationPHY_TXPHY_RXSNR_TXSNR_RX---------------------...
现在我有一段字符串如下:
Headend: 0
NO TEI MAC Attenuation PHY_TX PHY_RX SNR_TX SNR_RX
--- --- ----------------- ----------- ------ ------ ------ ------
1 2 00:23:1f:35:a7:b0 30 473 477 35 35
GD.LINK#
其中PHY_TX , PHY_RX ,SNR_TX , SNR_RX 分别对应473,477, 35,35。
先说下原理,PHY_TX , PHY_RX ,SNR_TX , SNR_RX四个变量都有一个范围,它们对应的四个数如果分别在范围内,就是正确的。现在我想知道,如何用正则表达式Regex判断,或者把上面的字符串中的四个数据提取出来,在范围里面进行判断。求高手指点。或者直接上代码。 展开
Headend: 0
NO TEI MAC Attenuation PHY_TX PHY_RX SNR_TX SNR_RX
--- --- ----------------- ----------- ------ ------ ------ ------
1 2 00:23:1f:35:a7:b0 30 473 477 35 35
GD.LINK#
其中PHY_TX , PHY_RX ,SNR_TX , SNR_RX 分别对应473,477, 35,35。
先说下原理,PHY_TX , PHY_RX ,SNR_TX , SNR_RX四个变量都有一个范围,它们对应的四个数如果分别在范围内,就是正确的。现在我想知道,如何用正则表达式Regex判断,或者把上面的字符串中的四个数据提取出来,在范围里面进行判断。求高手指点。或者直接上代码。 展开
1个回答
展开全部
/// <summary>
/// 递归展开Bom
/// </summary>
/// <param name="listBom">所有数据集</param>
/// <param name="bom">根节点物料</param>
/// <param name="treeNode">根树节点</param>
private void ResolveSubTree(DbSet<TbBom> listBom, TbBom bom, TreeNode treeNode)
{
//获取所有bom节点物料代码为父节点代码的物料
List<TbBom> subListClone = listBom.Where(p => p.ParentPartNo == bom.PartNo).ToList();
//获取所有bom节点物料代码为父节点代码的物料(过滤重复物料,用作循环)
var subList = listBom.Where(p => p.ParentPartNo == bom.PartNo).GroupBy(p => p.PartNo).Select(p => p.FirstOrDefault()).ToList();
//如果包含子节点
if (subList.Count > 0)
{
//树展开
treeNode.Expanded = false;
//循环遍历子节点
foreach (TbBom subBom in subList)
{
//查询出 子节点,和 当前父节点下 子节点的数量汇总
var sbom = new { b = subBom, c = subListClone.Where(p => p.PartNo == subBom.PartNo).Select(p => p.Qty).Sum() };
//创建节点
TreeNode node = new TreeNode();
node.Value = sbom.b.PartNo;
node.ToolTip = GetParentNodeNames(listBom, bom.ParentNos);
treeNode.ChildNodes.Add(node);
if (Valied(bom.ParentNos, sbom.b.PartNo))
{
node.ImageUrl = "~\\image\\flase.gif";
node.Text = string.Format("{0}", sbom.b.MaterialName);
continue;
}
else
{
node.ImageUrl = "~\\image\\true.gif";
node.Text = string.Format("{0}({1})", sbom.b.MaterialName, sbom.c);
}
ResolveSubTree(listBom, subBom, node);
}
}
}
追问
分给你了。我自己解决了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询