首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

怎么实现根据标记显示文字

2013-03-01 
如何实现根据标记显示文字?我有几段文字现要根据对文字的标记进行截取例如:文本域内容如下#A##A#abcdefg

如何实现根据标记显示文字?
我有几段文字  现要根据对文字的标记进行截取

例如:

文本域内容如下
#A#
<#A#>abcdefg</#A#>
#B#
<#B#>1234567</#B#>
#C#
<#C#>ABCDEFG</#C#>
#D#
<#D#>7654321</#D#>

现在我想输出:1234567 7654321

程序上该怎么写

请大家帮忙




[解决办法]
用正则提取 <#D#>和</#D#>间的文字
[解决办法]

引用:
用正则提取 <#D#>和</#D#>间的文字

加上判断是否为你需要的类型
[解决办法]
或者直接提取连续数字

            System.IO.StreamReader reader = new System.IO.StreamReader("e:\\1.txt",System.Text.Encoding.Default);
            string str = reader.ReadToEnd();
            Regex reg = new Regex(@"(?is)[\d]+");
            MatchCollection mc = reg.Matches(str);
            foreach (Match m in mc)
            {
                MessageBox.Show(m.Value);
            }

[解决办法]
正则改成<(#(B
[解决办法]
D)#)>(.*?)</\1>
[解决办法]
直接提取数字
\d+
[解决办法]
用正则即可

LS上  也许LZ不一定是要提取数字呢  只想要标记里面的东西饿
[解决办法]
根据标记?你的意思是说是要输入一个标记,然后在输出相应的内容是吧?
假设你输入 A,B,C,D这种规范的标记

string lbl = Console.ReadLine();
Match ma = Reges.IsMatch(source,"<#"+lbl+"#>([0-9]+?)</#"+lbl+"#>");
Console.WriteLine(ma.Groups[1].value);

热点排行