Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Infoga tecken i en sträng

Postades av 2004-05-14 13:44:26 - Jesper Liedberg, i forum visual basic - allmänt, Tråden har 14 Kommentarer och lästs av 594 personer

Hejsan

Undrar om det finns någon funktion som kan infoga tecken i en sträng. Med infoga menar jag inte byta ut. Säg att man har en sträng som består av en lång rad olika tecken, och man vill infoga t ex. komman på bestämda platser. Hur kan man göra det på ett enkelt (om det nu finns) sätt.

Tacksam för svar

Jesse


Svara

Sv: Infoga tecken i en sträng

Postades av 2004-05-14 14:04:51 - Sven Åke Persson

<code>
Dim testStr As String
Dim nyStr As String
testStr = "SvenPon är en klippa på Vb"
MsgBox testStr
nyStr = Replace(testStr, "klippa", "är hyffsat bra på Vb")
MsgBox nyStr
</code>


Svara

Sv: Infoga tecken i en sträng

Postades av 2004-05-14 14:19:33 - Jesper Liedberg

Tackar för det snabba svaret, tyvärr var det inte riktigt vad jag funderade på. Om vi säger så här.
Jag har en sträng "HejjagheterJesper", kan vara längre och innehålla text eller annat. Strängen innehåller inga blanksteg. Jag vill kunna placera kommatecken på bestämda positioner (t ex. position 5, 35, 99 osv) så att strängen blir så här "Hej,jag,heter,Jesper". Vill även kunna infoga blanksteg på bestämda positioner.

Finns det någon lösning på detta?

Jesse


Svara

Sv: Infoga tecken i en sträng

Postades av 2004-05-14 14:45:17 - Sven Åke Persson

<(t ex. position 5, 35, 99 osv)

Om det alltid är på dessa positioner så är det ganska enkelt med Left$(.........,....)
Dvs bygger om ny sträng genom att skifta nyStr oldStr med Left$

Sen kan du ju alltid öppna NotePad från VB och editera där som du vill och Klipp o Klistra via VB.


Svara

Sv: Infoga tecken i en sträng

Postades av 2004-05-14 15:08:29 - Jesper Liedberg

Detta låter precis som det jag var ute efter. Det är som sagt på bestämda positioner som kommatecknen ska in. Ska prova lite och se om jag får till det.

Tackar

Jesse


Svara

Sv: Infoga tecken i en sträng

Postades av 2004-05-14 16:11:27 - Sven Åke Persson

Oki på det , skall "skruva" ihop ett förslag till dig,därför att jag tycker det är roligt
med lite hjärngymnastik. Kommer under denna helg.

Kommer texten från en txtfil ? eller mellanlagrar du i en TextBox ?

Ha det för det tänker jag ha.


Svara

Sv:Infoga tecken i en sträng

Postades av 2004-05-18 00:06:41 - Sven Åke Persson

Ok har funderat ett tag och kom fram till att det bästa är att kopiera den
Funktion som finns i Delphi och heter Insert.Du får köra denna funktion i en loop
om du vill Inserta på flera positioner.
<code>
Option Explicit
Private Sub Command1_Click()
Dim StrInp As String 'Strängen som skall behandlas
'Vid flera infoga börja från höger Tack *Emma*
StrInp = "Undraromdetfinnsnågonfunktionsomkaninfogateckeniensträng"
StrInp = Insert(" ", StrInp, 51) 'infoga ett space på pos 51
StrInp = Insert(", ", StrInp, 30) 'infoga komma på pos 30
StrInp = Insert(" ", StrInp, 9) 'infoga ett space på pos 9
StrInp = Insert(" Sven ", StrInp, 7) 'infoga " Sven" på pos 7
Label1.Caption = StrInp
End Sub

Public Function Insert(ByVal StrToIns As String, ByVal oldStr As String, _
ByVal pos As Long) As String
Dim LeftStr As String,RightStr As String
LeftStr = Left$(oldStr, pos - 1) & StrToIns
RightStr = Mid$(oldStr, pos)
Insert = LeftStr & RightStr
End Function
</code>


Svara

Sv: Infoga tecken i en sträng

Postades av 2004-05-18 08:21:54 - Emma Magnusson

Stämmer det verkligen Sven? Jag har iofs inte testat men rent logiskt känns det som att man borde börja infoga från höger i strängen. Detta då en insert ifrån vänster gör strängen ett tecken längre innan man ska infoga nästa tecken, vilket borde göra att tecknet förskjuts ett steg åt vänster i förhållande till den önskade posititonen...

/Emma - spånar lite


Svara

Sv: Infoga tecken i en sträng

Postades av 2004-05-18 11:39:03 - Sven Åke Persson

mmm. Du har rätt jag fick addera två tecken positioner på den sista som egentligen
var position 51 från början, blev nu position 53.
Tänkte från början bara att man skulle infoga en gång.Insertar man längre meningar blir det
stökigt att göra det från vänster om det skall komma fler efter.

Skall fixa till det Tack.
Edit : Har ändrat orginalet ovan


Svara

Sv: Infoga tecken i en sträng

Postades av 2004-05-18 11:54:37 - Sven Åke Persson

Tänkte en gång till.Funktionen är Ok men man måste tänka på
att infoga från höger om man har flera positioner.
<code>
Private Sub Command1_Click()
Dim StrInp As String 'Strängen som skall behandlas
StrInp = "Undraromdetfinnsnågonfunktionsomkaninfogateckeniensträng"
StrInp = Insert(" ", StrInp, 51) 'infoga ett space på pos 51
StrInp = Insert(",", StrInp, 30) 'infoga ett komma på pos 30
StrInp = Insert(" ", StrInp, 9) 'infoga ett space på pos 9
Label1.Caption = Insert(" Emma ", StrInp, 7) 'infoga "Emma" på pos 7
End Sub
</code>


Svara

Sv: Infoga tecken i en sträng

Postades av 2004-05-19 14:00:27 - Jesper Liedberg

Hejsan, ser att det brottas med problemet.
Tackar för era svar och funderingar. Har nu fått det hela att fungera. Koden är inte vacker men den gör sitt jobb. Eftersom raderna i filen har bestämd längd och tecknen ska in på bestämmda positioner fungerar detta. Som ni skrev var det lite jobbigt att hålla reda på positionerna eftersom de förskjuts hela tiden.

<code>
If transKod.Text = "360" Then
sString = Left$(sString, 3) & "," & Right$(sString, Len(sString) - 3)
sString = Left$(sString, 13) & "," & Right$(sString, Len(sString) - 13)
sString = Left$(sString, 24) & "," & Right$(sString, Len(sString) - 24)
sString = Left$(sString, 32) & "," & Right$(sString, Len(sString) - 32)
sString = Left$(sString, 37) & "," & Right$(sString, Len(sString) - 37)
sString = Left$(sString, 39) & "," & Right$(sString, Len(sString) - 39)
sString = Left$(sString, 41) & "," & Right$(sString, Len(sString) - 41)
sString = Left$(sString, 43) & "," & Right$(sString, Len(sString) - 43)
sString = Left$(sString, 45) & "," & Right$(sString, Len(sString) - 45)
sString = Left$(sString, 47) & "," & Right$(sString, Len(sString) - 47)
sString = Left$(sString, 49) & "," & Right$(sString, Len(sString) - 49)
sString = Left$(sString, 51) & "," & Right$(sString, Len(sString) - 51)
sString = Left$(sString, 53) & "," & Right$(sString, Len(sString) - 53)
sString = Left$(sString, 57) & "," & Right$(sString, Len(sString) - 57)
sString = Left$(sString, 59) & "," & Right$(sString, Len(sString) - 59)
sString = Left$(sString, 64) & "," & Right$(sString, Len(sString) - 64)
List2.AddItem (sString)
Else
någonting osv.
</code>

Som sagt, det fungerar. Tänker väl förfina koden senare när man lärt sig lite mer.

Tack igen

Jesse



Svara

Sv: Infoga tecken i en sträng

Postades av 2004-05-19 14:25:44 - Sven Åke Persson

Varför inte använda den Funktion Insert jag skruvade ihop ? enl ex ovan.
Börja bakifrån i strängen och kör så det ryker .

Ibland funderar man på om man svarar i onödan,den som frågar läser i allafall inte
och läser han/hon så förstår dom inte det geniala ;-) "Margaritas ante porcas"


Ha det LångHelg Nu är han på G ;-)


Svara

Sv: Infoga tecken i en sträng

Postades av 2004-05-19 16:10:06 - Jesper Liedberg

Hej, jo jag såg vad du skrev och har suttit och funderat. Det kom lite imellan men har nu börjat knåpa på den funktionen du visade. Ska se om jag får den att fungera.

Hälsningar

Jesse


Svara

Sv: Infoga tecken i en sträng

Postades av 2004-05-19 16:11:03 - Jesper Liedberg

Hej, jo jag såg vad du skrev och har suttit och funderat. Det kom lite imellan men har nu börjat knåpa på den funktionen du visade. Ska se om jag får den att fungera.

Hälsningar

Jesse

Edit: Hur tar man bort ett inlägg som blev dubbelpostad, fick lite nätverksproblem så jag trodde inte att den första kom fram.


Svara

Sv: Infoga tecken i en sträng

Postades av 2004-05-19 16:27:13 - Sven Åke Persson

Det gör inget , kul att du svarade. Ändra radera


Svara

Nyligen

  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak
  • 16:14 Vem anlitar man egentligen när tak
  • 16:13 Vem anlitar man egentligen när tak
  • 11:52 Noen erfaring med uttak hos Mostbe
  • 11:51 Noen erfaring med uttak hos Mostbe

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 699
27 958
271 741
721
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies