Avatar billede kennethkimnielsen Nybegynder
05. september 2007 - 14:13 Der er 7 kommentarer og
1 løsning

Vis kun første 200 tegn af udtræk..

Har et nyhedsfelt i en repeater, som jeg ønsker forkortet, hvis det er over 200 tegn.. Mit problem er at tjekke længden og returnere den forkortet streng til repeateren igen..

Jeg har forsøgt mig med "string.remove()" og "sql LEFT", men uden sucess

Håber der er nogle der kan hjælpe og forstå problemstillingen?
Avatar billede clawsclaws Nybegynder
05. september 2007 - 14:32 #1
Du kan tage en substring på den...
String.Substring
Avatar billede clawsclaws Nybegynder
05. september 2007 - 14:38 #2
Du får lige et eksempel, men det er godt nok skrevet i vb.net, men det samme kan lade sig gøre i c#. Håber at jeg har forstået dit spørgsmål korrekt.

Dim s As String = "din artikel på over 200 tegn"
Dim s2 As String = ""
s2 = s.Substring(0, 200)
Avatar billede kennethkimnielsen Nybegynder
05. september 2007 - 14:54 #3
Kan jeg ikke ordne det på en simpel måde direkte i min <%# eval("Nyhed").(???) %>

Ved nemlig ikke lige hvordan jeg skal udskifte min row["Nyhed"] fra datatablen til den forkortede streng..
Avatar billede clawsclaws Nybegynder
05. september 2007 - 20:16 #4
Nu er du vist over i noget javascript.. kan det ikke passe? I givet fald kan du bruge denne funktion... Tilføj den i den header.. Ellers må du lige prøve og beskrive hvilken teknologi du anvender...

<script language="JavaScript">
function Mid(str, start, len)
{
// Make sure start and len are within proper bounds
    if (start < 0 || len < 0) return "";
    var iEnd, iLen = String(str).length;
    if (start + len > iLen)
          iEnd = iLen;
    else
          iEnd = start + len;
    return String(str).substring(start,iEnd);
}
</script>
Avatar billede arne_v Ekspert
06. september 2007 - 03:27 #5
Prøv:

<%# ((string)eval("Nyhed")).Substring(0, Math,Min(((string)eval("Nyhed")).Length, 200)) %>
Avatar billede nielle Nybegynder
06. september 2007 - 07:11 #6
Eller måske noget i denne stil:

    <%# Kun200(eval("Nyhed")) %>

og så denne i din code-behind:

    protected string Kun200(object nyhed)
    {
        string nyhedStr = nyhed.ToString();
        string nyhedStrShort = nyhedStr.Substring(0, 200);
        return (nyhedStrShort != nyhedStr)
            ? nyhedStrShort + "...";
            : nyhedStrShort;
    }
Avatar billede kennethkimnielsen Nybegynder
06. september 2007 - 08:46 #7
Brugte dit udgangspunkt nielle.. og så virker det.. :D
Ved ikke hvorfor jeg ikke tænkte på at lave den så simpel, til at starte med.. :S

protected string xLaengde(string Nyhed)
    {
        if (Nyhed.Length >= 250)
        {
            string nyhedStrShort = Nyhed.Substring(0, 249);
            return nyhedStrShort;
        }
        else
        {
            return Nyhed;
        }
        }
Avatar billede nielle Nybegynder
06. september 2007 - 08:51 #8
Eller, i en kortere form:

protected string xLaengde(string Nyhed)
{
    return (Nyhed.Length >= 250) ? Nyhed.Substring(0, 249) : Nyhed;
}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester