Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Einzelnes Zeichen in einem String, an einer bestimmten Stelle tauschen

Frage Entwicklung VB for Applications

Mitglied: captainchaos666

captainchaos666 (Level 1) - Jetzt verbinden

11.02.2007, aktualisiert 17:11 Uhr, 14458 Aufrufe, 6 Kommentare

Hallo VB-Spezialisten,

könnt Ihr mir weiterhelfen, ich habe zwei Strings

StringA = xxxx-xxxx-xxxx-xxxx
StringB = xxxx-xxxx-xxEx-xxxx

ich möchte nun das das "E" in den StringA übernommen wird, wie kann ich eine einzelnes Zeichen aus einem String in einen anderen Kopieren. Der Buchstabe "E" ist nicht fest es können auch andere Zeichen sein. Es soll nur das Zeichen an der 13'ten Stelle von StringB in StringA Kopiert werden. Die anderen Zeichen müssen erhalten bleiben.

so soll's mal aussehen

StringA = xxxx-xxxx-xxEx-xxxx


Dank euch!


Gruß Alex
Mitglied: DaSam
11.02.2007 um 15:11 Uhr
Heppa:

01.
sStr = "xxxx-xxxx-xxxx-xxxx-xxxx" 
02.
wscript.echo ReplChar(sStr, "*", 13) 
03.
 
04.
 
05.
function ReplChar (sStr, newChar, nPos) 
06.
ReplChar = left(sStr, nPos-1) & newChar & right(sStr, len(sStr)-nPos) 
07.
end function 
08.
 
Code ist allerdings ohne irendwelche Überprüfungen, ob die Position z.B. auch innerhalb der Zeichenkette liegt ...

cu,
Alex
Bitte warten ..
Mitglied: captainchaos666
11.02.2007 um 15:30 Uhr
Hallo Alex,
Dank Dir
Bitte warten ..
Mitglied: bastla
11.02.2007 um 16:47 Uhr
Hallo captainchaos666!

Als Nachtrag: Sofern Du nicht VBScript (sondern etwa VBA) verwendest, gäbe es genau für diesen Zweck die Funktion / Anweisung "Mid()":
01.
Mid(strA, 13, 1) = Mid(strB, 13, 1)
Grüße
bastla
Bitte warten ..
Mitglied: Biber
11.02.2007 um 16:58 Uhr
@bastla
Mid(strA, 13, 1) = Mid(strB, 13, 1)
Sicher? Ich meine den linken Teil...
StrA=Mid(strA,1,12) + Mid(StrB,13,1) + Mid(StrA,14)
....fände ich einleuchtender.
Würde mich wundern, wenn sich mit Left()/Right()/Mid auch PEEKen und POKEn liesse...*gg
Und wenn, geht dann auch ein.... ?
UCase(strA) = LCase(strB)


SCNR
Biber
Bitte warten ..
Mitglied: DaSam
11.02.2007 um 17:08 Uhr
@Biber:

dachte zuerst auch, dass man eine Zuweisung mittels mid() machen kann - ich habe schwer im Hinterkopf, dass das bei irgendeiner BASIC-Ausprägung mal ging ...

In 'C' wäre es ja ohnehin wesentlich "eleganter"

cu,
Alex
Bitte warten ..
Mitglied: bastla
11.02.2007 um 17:11 Uhr
@Biber

> Mid(strA, 13, 1) = Mid(strB, 13, 1)
Sicher? Ich meine den linken Teil...
Mit der Einschränkung auf "Nicht VBScript": ja

> StrA=Mid(strA,1,12) + Mid(StrB,13,1) + Mid(StrA,14)
....fände ich einleuchtender.
Wir Basler schreiben in solchen Fällen ja eher "&" als "+" (aber mehr aus ästhetischen Gründen - zulässig ist das "+" auch) - ansonsten kann man's so machen, wenn man viel Zeit hat (oder VBS verwenden muss) ...

Würde mich wundern, wenn sich mit Left()/Right()/Mid auch PEEKen und POKEn liesse...*gg
"Left()" und "Right()" kann ich von einem diesbezüglichen Verdacht frei sprechen ...
Was "Mid()" angeht: Auf einen String bezogen ist es das ja eigentlich auch (hinsichtlich Speicher müsste man wohl schon Konstruktionen mit Parameterübergabe "by Ref" oÄ strapazieren ...).

Und wenn, geht dann auch ein.... ?
> UCase(strA) = LCase(strB)
Geht - allerdings in die Binsen ...

Grüße
bastla
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Batch & Shell
Per Batch ab einer bestimmten Stelle in einer .txt auslesen (1)

Frage von PeterPann zum Thema Batch & Shell ...

C und C++
gelöst Anzahl der Buchstaben in einem String Element Array C++ (3)

Frage von Protected zum Thema C und C ...

Festplatten, SSD, Raid
gelöst Defekten 3Ware Controller Tauschen (5)

Frage von Koseb586 zum Thema Festplatten, SSD, Raid ...

Heiß diskutierte Inhalte
Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Grafikkarten & Monitore
Tonprobleme bei Fernseher mit angeschlossenem Laptop über HDMI (11)

Frage von Y3shix zum Thema Grafikkarten & Monitore ...

Microsoft Office
Keine Updates für Office 2016 (11)

Frage von Motte990 zum Thema Microsoft Office ...