花生鱼's Blog

■╪ 加快奋斗的脚步
 
 

Powered by: 博客园
模板提供:沪江博客
博客园 | 首页 | 发新随笔 | 发新文章 | 联系 | 订阅订阅 | 管理

2008年2月29日

得到Javascript:alert的值 正则
     我的工作是写游戏卡密直充的接口.所以经常会与正则打交道.
     因为有些时候我得得到页面返回的错误信息,比如我得到的消息里经常会有:
     <script language="javascript">alert('您输入的验证码错误!');</script>
     夹杂在我获得的页面数据里面,单独为它写个GetString()//获得截取后的字符串[这方法我前些时的帖子里有]未免有些麻烦,所以就产生了下面的方法.
     只需要传获得的页面数据进去就行了,如果有页面返回Alert的错误消息就可以用这个方法获得了.
     大家看到如果有什么问题,请留言哦!谢谢

/**//// <summary>
        
/// 得到页面的错误提示信息,不支持language 和 type 在一起的
        
/// </summary>
        
/// <param name="data">查找的数据</param>
        
/// <returns></returns>

        public string GetErrorStr(string data)
        
{
            
string pattern = @"(?<=<)script\s?((language=([""]?|[']?)javascript([""]?|[']?)){1}|(type=([""]?|[']?)text/javascript([""]?|[']?)){1}){1}[^>]*>alert\(([""]?|[']?)(?<value>[^""']+)";
            Regex r 
= new Regex(pattern, RegexOptions.IgnoreCase);
            MatchCollection mc 
= r.Matches(data);
            
if (mc.Count > 0)
            
{
                
return mc[0].Groups["value"].Value;
            }

            
return string.Empty;
        }
posted @ 2008-02-29 23:38 婲生魚 阅读(1040) 评论(4) 编辑
 
得到指定隐藏域的值 正则
/**//// <summary>
        
/// 得到指定隐藏域的值
        
/// </summary>
    
/// <param name="data">查找的数据</param>
        
/// <param name="HiddenName">隐藏域的名字</param>

        public string GetHiddenValue(string data, string HiddenName)
        
{
            
string pattern = @"(?<=<)input\s?((type=([""]?|[']?)hidden([""]?|[']?)\s*name=([""]?|[']?)" + HiddenName + @"([""]?|[']?)){1}|(name=([""]?|[']?)" + HiddenName + @"([""]?|[']?)\s*type=([""]?|[']?)hidden([""]?|[']?)){1}){1}\svalue=([""]?|[']?)(?<value>[^""'>]+)([""]?|[']?)(?=>)";
            Regex r 
= new Regex(pattern, RegexOptions.IgnoreCase);
            MatchCollection mc 
= r.Matches(data);
            
if (mc.Count > 0)
            
{
                
return mc[0].Groups["value"].Value;
            }

            
return string.Empty;
        }
posted @ 2008-02-29 23:27 婲生魚 阅读(335) 评论(0) 编辑