webForumDet fria alternativet

Ersätta

Webbutveckling

5 svar · 336 visningar · startad av Josef

Medlem sedan mars 20023 561 inlägg
Frågan#1

Jag är helt otroligt värdelös på reguljära uttryck. :e

Behöver lite hjälp med det här:

Säg att jag har en stäng som innehåller ett par förekomster av <b>t ex Danmark</b>. Detta vill jag ersätta med <a name="[förekomsten]">[förekomsten]</a> samt ha ut förekomsten i en variabel.

Så att <b>Danmark</b> skall bli <b><a name="Danmark">Danmark</a></b>
och så vill jag ha Danmark i variabeln Sector.

Någon som hänger med i denna värdelösa förklaring? ;)

Medlem sedan aug. 20039 340 inlägg
#2

Så här skulle det se ut i javascript. Behöver du hjälp att översätta det till asp? Isf, klassisk, eller .net?

<script type="text/javascript">
subject = "<b>Danmark</b>";
regexp = /<b>([^<]*)<\/b>/i;

Sector = subject.match(regexp)[1];
tehHTML = subject.replace(regexp, "<b><a href=\"$1\">$1</a></b>");

document.write(tehHTML);
document.write("<br />");
document.write(Sector);
</script>
Medlem sedan mars 20023 561 inlägg
#3

Fixar nog det... ;)
Annars återkommer jag.

Tack! :)

Medlem sedan mars 20023 561 inlägg
#4

Nej, jag får inte till det. :e

            Dim pattern As String = "/<b>([^<]*)<\/b>/i"
            Dim rx As Regex = New Regex(pattern, RegexOptions.IgnoreCase & RegexOptions.Multiline)

            Dim mc As MatchCollection = rx.Matches(text)

            For Each m As Match In mc
                Countries.Add(m.ToString())
                Regex.Replace(m.Value, pattern, "<b><a name=\" & m.Value & ">" & m.Value & "</a></b>")
            Next
Medlem sedan juli 20011 084 inlägg
#5
"/<b>([^<]*)<\/b>[u][b]/i[/b][/u]"

"/i" talar om att det ska vara IgnoreCase, men i ASP.NET gör man det när man skapar objektet istället (som du har gjort). Så du bör nog ta bort den biten. (Du kan nog skippa första slashen också)

Medlem sedan mars 20023 561 inlägg
#6

Det gick lite bättre, mozilla. :)

Som det är nu matchar den ju även <b>:na.

Har fått till så att den hittar alla förekomster, dock får jag inte till ersättningen så att den blir ett html-ankare. Någon som har lust att ge en hjälpande hand?

265 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
133 ms — ändringar (db)