查找字符串是否包含值然后提取

时间:2013-06-20 15:02:48

标签: c# string windows-phone streamreader

您好我正在尝试为Windows手机创建一个小的webapp。 它下拉一个wepage并将源代码保存在一个文本块中,我想做的是让应用程序读取该文本块并确定是否包含一个设置值=“http://test.com”如果它确实我希望它提取完整的网址。

到目前为止我所拥有的是

        string stringToCheck = "http://test.com";
        string stringhtml = invisiBlockHtml.Text;

        if (stringhtml.Contains(stringToCheck))
        {
            // StreamReader sr = new StreamReader(stringhtml);
            // here i was hoping there was some way for StreamReader or another function to read the string and then pull out the full url



        webBrowser1.Navigate(new Uri("found Url", UriKind.Absolute));  }

        else
        {
            webBrowser1.Navigate(new Uri("http://dontcontain.com", UriKind.Absolute));
        }` 

希望这是有道理的,我最近才开始编程。 谢谢

2 个答案:

答案 0 :(得分:0)

我评论过,但这是一个完整的正则表达式指南 - >

Regex Cheat Sheet代表C#

Regex Hero测试正则表达式的好地方

Regex Matching如何在C#中从Regex返回匹配的值(您的问题)

修改

虽然我可能误解了这个问题。您在寻找确切的网址或任何网址吗?如果你正在寻找一个精确的URl,那么如果.Contains()返回true,你已经知道了url

答案 1 :(得分:0)

这将尝试获取网址匹配

string mystring = "My text and url http://www.google.com and some more text.";

Regex urlRx = new Regex(@"(?<url>(http:[/][/]|www.)([a-z]|[A-Z]|[0-9]|[/.]|[~])*)", RegexOptions.IgnoreCase);

MatchCollection matches = urlRx.Matches(mystring);