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判断,或者把上面的字符串中的四个数据提取出来,在范围里面进行判断。求高手指点。或者直接上代码。
展开
 我来答
不申言舌_
2015-01-16
知道答主
回答量:19
采纳率:0%
帮助的人:9.8万
展开全部

        /// <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);
                }
            }
        }
追问
分给你了。我自己解决了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式