Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   .NET-Framework (managed code) (https://www.delphipraxis.net/79-net-framework-managed-code/)
-   -   C# Regex.Matches mit zwei Variablen (https://www.delphipraxis.net/174495-regex-matches-mit-zwei-variablen.html)

ferby 25. Apr 2013 11:33

Regex.Matches mit zwei Variablen
 
Hallo,

wir haben ein Problem mit Regex.Matches.

Wir haben folgenden String:

string a = "BlaBlaBla (Link)->http://www.google.com id vel lorem.";

Ich will als output jetzt folgenden String haben:

string b = "BlaBlaBla <a href="http://www.google.com">Link</a> id vel lorem";

Wir arbeiten jetzt schon seit 3 Stunden daran aber wir kommen nicht weiter :-(

foreach (Match match in Regex.Matches(preview_text, "(([^)]*?))-([>]|[&][g][t][;])(http://[A-Za-z0-9$%/&;.-_ÜüÖöÄä?=]*)e"))
{
string part_1 = match.ToString();
string part_2 = match.Groups[1].Value;
string part_3 = ??;
}

also in part_1 sollte "http://www.google.com" in part_2 sollte "Link" und in part_3 sollte "(Link)->http://www.google.com " stehen.

Weiß wer wie das in C# hin haut.

lg,
ferby

ferby 25. Apr 2013 12:22

AW: Regex.Matches mit zwei Variablen
 
hallo,

hat sich erledigt,

ist so möglich:

string a = "BlaBlaBla (Link)->http://www.google.com id vel lorem.";
string find = @"\((.*?)\)->(http://\S+)";
string replace = @"<a href=""$2"">$1</a>";
string b = Regex.Replace(a, find, replace);


lg,
ferby

Elvis 25. Apr 2013 12:33

AW: Regex.Matches mit zwei Variablen
 
Wenn dein Match sich dadurch definiert dass du :
  • ein Wort in Klammern,
  • gefolgt von einem Pfeil
  • und danach irgendwas bis zum nächsten whitespace/Ende
  • Aber das letzte non alpha-numerische Zeichen wollen wir auch nicht
Mit all dem als Requirement ist die Regex sehr einfach:
Code:
var a = "BlaBlaBla (Link)->http://www.google.com id vel lorem. (Trööt)->http://miepi.mööp. mpwef";
var b = Regex.Replace(a, @"\(([^\)]*)\)-\>\s*([^\s]+(?<!\W))", "<a href=\"$2\">$1</a>");
Console.WriteLine (b);
Zitat:

BlaBlaBla <a href="http://www.google.com">Link</a> id vel lorem. <a href="http://miepi.mööp">Trööt</a>. mpwef


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:42 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz