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

java正则表达式获得html标签内的内容

2013-09-10 
java正则表达式取得html标签内的内容div idtext-chinese styledisplay:nonepspan idchinese

java正则表达式取得html标签内的内容


        <div id="text-chinese" style="display:none;">
            
            <p>
                
                <span id="chinese-1">对不起!</span>
                
            </p>
            
            <p>
                
                <span id="chinese-2">什么事?</span>
                
            </p>
            
            <p>
                
                <span id="chinese-3">这是您的手提包吗?</span>
                
            </p>
            
            <p>
                
                <span id="chinese-4">对不起,请再说一遍。</span>
                
            </p>
            
            <p>
                
                <span id="chinese-5">这是您的手提包吗?</span>
                


            </p>
            
            <p>
                
                <span id="chinese-6">是的,它是。</span>
                
            </p>
            
            <p>
                
                <span id="chinese-7">非常感谢你。</span>
                
            </p>
            
        </div>


从从其中标签中取得中文,正则表达式该怎么写呢?
[解决办法]
新建一个1.txt

 <div id="text-chinese" style="display:none;">
            
            <p>
                
                <span id="chinese-1">对不起!</span>
                
            </p>
            
            <p>
                


                <span id="chinese-2">什么事?</span>
                
            </p>
            
            <p>
                
                <span id="chinese-3">这是您的手提包吗?</span>
                
            </p>
            
            <p>
                
                <span id="chinese-4">对不起,请再说一遍。</span>
                
            </p>
            
            <p>
                
                <span id="chinese-5">这是您的手提包吗?</span>
                
            </p>
            
            <p>
                
                <span id="chinese-6">是的,它是。</span>
                
            </p>
            
            <p>
                


                <span id="chinese-7">非常感谢你。</span>
                
            </p>
            
        </div>



            string sourcestr = File.ReadAllText(@"C:\1.txt", Encoding.GetEncoding("GB2312"));
            string patternstr = @"(?is)<p>\s*<span\s*id=""[^""]*"">(.*?)</span>\s*</p>";
            Regex regx = new Regex(patternstr);
            List<string> urllist = new List<string>(); 
            MatchCollection mcurl = regx.Matches(sourcestr);
            foreach (Match sk in mcurl)
            {       
                urllist.Add(sk.Groups[1].Value);//结果在urllist中
            }

[解决办法]
引用:
新建一个1.txt
HTML code

 <div id="text-chinese" style="display:none;">
            
            <p>
                
                <span id="chinese-1">对不起!</span>
                
            </p>
……

擦,java啊,正则差不多就这个(?is)<p>\s*<span\s*id="[^"]*">(.*?)</span>\s*</p>
自己试试
[解决办法]

(?<=<span\b[^>]*?>)[^<>]+(?=</span>)

结果:



对不起!
什么事?
这是您的手提包吗?
对不起,请再说一遍。
这是您的手提包吗?
是的,它是。
非常感谢你。

热点排行