• 03-11-2019, 19:33:24
    #1
    richTextBox1'da eğer url adresi varsa, bunu "insta" adlı diziye atamak istiyorum.Bunu bir button click ile yapmak istiyorum.
    Bu arada bu url adresleri yalnızca instagram adresleridir. yani başlangıcı "https"

    richtextbox örneğin şöyle olacak.
    https://www.instagram.com/r10net asdasc 1 ka sa ffg https://www.instagram.com/r11net dcgsfdg sdgfdsfs sdfsdfds 222222 43453

    Mesela toplam 50 adet adres bulunduysa dizi 50 elemanlı olsun istiyorum.

    Acaba bu nasıl yapılabilir? "IndexOf" denedim ancak diziye atayabileceğim nitelikte sonuç döndüremedim.
  • 03-11-2019, 19:46:28
    #2
    var linkParser = new Regex(@"b(?:https?://|www.)S+b", RegexOptions.Compiled | RegexOptions.IgnoreCase);
    var rawString = "https://www.instagram.com/r10net asdasc 1 ka sa ffg https://www.instagram.com/r11net dcgsfdg sdgfdsfs sdfsdfds 222222 43453";
    foreach(Match m in linkParser.Matches(rawString))
    MessageBox.Show(m.Value);
  • 03-11-2019, 19:47:32
    #3
    var list = new List<string>();
    var regexPattern = new Regex(@"b(?:https?://|www.)S+b", RegexOptions.Compiled | RegexOptions.IgnoreCase);
    var text= "https://www.instagram.com/r10net asdasc 1 ka sa ffg https://www.instagram.com/r11net dcgsfdg sdgfdsfs sdfsdfds 222222 4345";
    foreach(Match m in regexPattern.Matches(text))
    list.Add(m.Value);
  • 03-11-2019, 19:51:13
    #4
    yeni adlı üyeden alıntı: mesajı görüntüle
    richTextBox1'da eğer url adresi varsa, bunu "insta" adlı diziye atamak istiyorum.Bunu bir button click ile yapmak istiyorum.
    Bu arada bu url adresleri yalnızca instagram adresleridir. yani başlangıcı "https"

    richtextbox örneğin şöyle olacak.
    https://www.instagram.com/r10net asdasc 1 ka sa ffg https://www.instagram.com/r11net dcgsfdg sdgfdsfs sdfsdfds 222222 43453

    Mesela toplam 50 adet adres bulunduysa dizi 50 elemanlı olsun istiyorum.

    Acaba bu nasıl yapılabilir? "IndexOf" denedim ancak diziye atayabileceğim nitelikte sonuç döndüremedim.
    Aşağıdaki gibi regex ile yapabilirsin. Projeye using System.Text.RegularExpressions; eklemelisin.

    var matches = Regex.Matches(richTextBox1.Text, "(https://www.instagram.com/.*?)(?= )", RegexOptions.Multiline);
     string[] dizi =  matches.Cast<Match>().Select(x => x.Value).ToArray();