Avatar billede rexy Nybegynder
22. januar 2007 - 16:07 Der er 8 kommentarer

fjerne mellemrum i en streng

Jeg har en streng hvor der bliver tilført en tekst efterfuldt af en masse (forskelligt mellem 10-20) mellemrum. når jeg så for den udskrevet efterfuldt af en anden variabel kommer der til at stå noget i den stil:
tekst tekst 1                          tekst tekst 2

Og det jeg gerne ville have var:
tekst tekst 1tekst tekst 2

Så findes der en måde at fjerne alle de mellemrum der ligger efter sidste bukstav i en string.
Avatar billede mcgoat Nybegynder
22. januar 2007 - 16:10 #1
Avatar billede mcgoat Nybegynder
22. januar 2007 - 16:12 #2
Avatar billede mcgoat Nybegynder
22. januar 2007 - 16:14 #3
Visual Basic Copy Code
' Initializes string.
Dim TestString As String = "  <-Trim->  "
Dim TrimString As String
' Returns "<-Trim->  ".
TrimString = LTrim(TestString)
' Returns "  <-Trim->".
TrimString = RTrim(TestString)
' Returns "<-Trim->".
TrimString = LTrim(RTrim(TestString))
' Using the Trim function alone achieves the same result.
' Returns "<-Trim->".
TrimString = Trim(TestString)
Avatar billede kalp Novice
22. januar 2007 - 16:21 #4
string tekst = "tekst1 tekst2        tekst3";
string[] ord = tekst.Split(" ");
string clear = "";

foreach(string in ord)
{
if(ord.Trim() != " ")
clear+= ord.Trim() + " ";
}

Console.WriteLine(clear);

har ikke tjekket på syntax.. eller om der mangler noget.. men tror du har en god ide til hvad der menes nu;)
Avatar billede kalp Novice
22. januar 2007 - 16:22 #5
foreach(string word in ord)
{
if(word.Trim() != " ")
clear+= word.Trim() + " ";
}

se fandt allerede en fejl hehe
Avatar billede kalp Novice
22. januar 2007 - 16:22 #6
foreach(string word in ord)
{
if(word.Trim() != "")
clear+= word.Trim() + " ";
}

og endnu en rettelse.. puha
Avatar billede kalp Novice
22. januar 2007 - 16:23 #7
du får den samlet så du ikke er i tvivl.


string tekst = "tekst1 tekst2        tekst3";
string[] ord = tekst.Split(" ");
string clear = "";

foreach(string word in ord)
{
if(word.Trim() != "")
clear+= word.Trim() + " ";
}

Console.WriteLine(clear);
Avatar billede hmortensen Nybegynder
22. januar 2007 - 16:35 #8
Man kan også bruge Regex:
output = System.Text.RegularExpressions.Regex.Replace(input, "[\s]{1,}", " ")
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
Kurser inden for grundlæggende programmering

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