Autor Thema: Suchen und Ersetzen in LotusScript  (Gelesen 2785 mal)

Offline Tom Error

  • Frischling
  • *
  • Beiträge: 35
  • Geschlecht: Männlich
Suchen und Ersetzen in LotusScript
« am: 25.11.02 - 10:43:39 »
Huhu Zusammen,

ich arbeite mich gerade so etwas in LotusScript ein und stosse dabei auf ein kleines Hinterniss.

Wie kann ich einen bestimmten Teil eines Strings ändern?

z.B. Ich erhalte den Wert http://LN015DB01/start.nsf

nun möchte ich nach LN015DB01 suchen und durch LN015DB02 ersetzten.

Es kann auch sein das ich den Wert http://LN015DB01/start.nsf;http://LN015DB01/blabla.nsf erhalte und auch hier sollen beide LN015DB01 durch LN015DB02 ersetzt werden.

Also praktisch wie die Suchen- und Ersetzen-Funktion bekannter Texteditoren.

Für die Formalsprache habe ich @ReplaceSubstring() gefunden, aber noch nichts entsprechendes für LotusScript.

Ich hoffe Ihr könnt mir helfen.
Vielen Dank soweit


 


So far
Tschau
Tom
Windows NT 4.0 SP6a - Lotus Domino Enterprise Server 5.0.11

Offline Till_21

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 708
  • Geschlecht: Männlich
  • I love Germany
Re:Suchen und Ersetzen in LotusScript
« Antwort #1 am: 25.11.02 - 10:52:16 »
Public Function ReplaceSubstring(ByVal txt As String, ByVal from_str As String, ByVal to_str As String) As String
Dim pos As Integer
Dim new_text As String
Dim from_len As Integer

    from_len = Len(from_str)
    Do While Len(txt) > 0
        pos = InStr(txt, from_str)
        If pos = 0 Then
            new_text = new_text & txt
            txt = ""
        Else
            new_text = new_text & _
                Left$(txt, pos - 1) & to_str
            txt = Mid$(txt, pos + from_len)
        End If
    Loop
    ReplaceSubstring = new_text
End Function

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re:Suchen und Ersetzen in LotusScript
« Antwort #2 am: 25.11.02 - 10:58:13 »
Hi,

diese Funktion habe ich mal aus dem Web gefischt, aber noch nicht getestet.

Zitat
Function ReplaceSubstring(sSource As String, sFrom As String, sTo As String) As String
 
 Dim sResult As String
 Dim i As Integer, iLenFrom As Integer, iLenRslt As Integer
 i=0
 iLenFrom=Len(sFrom)
 sResult=sSource
 
 Do While(i < Len(sResult))
  i=i+1
  If Mid$(sResult, i, iLenFrom ) = sFrom Then
   iLenRslt=Len(sResult)
   sResult=Left$(sResult, (i-1)) + sTo + Right$(sResult, iLenRslt - ( (i-1) + ( iLenFrom ) ) )
  End If
 Loop
 
 ReplaceSubstring=sResult
End Function

Eine andere Alternative ist die:
Zitat

Dim formula as String

comp = "Zu durchsuchender String"
formula = |@ReplaceSubstring("| & comp & |" ; "replaceme" ; "withvalue")|
newval = Evaluate(formula)


Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Rob Green

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.651
  • Geschlecht: Männlich
    • Meipor
Re:Suchen und Ersetzen in LotusScript
« Antwort #3 am: 25.11.02 - 11:01:55 »
oder mit Evaluate innerhalb von Script:

Zeichenfolge=doc.Servername(0)
Startposition="http://"
Endzeichenfolge="/"
Server = {@Middle( Zeichenfolge ; Startposition ; Endzeichenfolge )}
result = Evaluate(Server)

edit: @Axel, ein Mann ein Gedanke  ;D
« Letzte Änderung: 25.11.02 - 11:02:55 von Rob Green »
Vielleicht verdirbt Geld wirklich den Charakter.
Auf keinen Fall aber macht Mangel an Geld ihn besser.
(John Steinbeck)

Meiporblog: http://www.meipor.de/blog
allg. Unternehmerblog: http://www.m-e-x.de/blog

Offline Tom Error

  • Frischling
  • *
  • Beiträge: 35
  • Geschlecht: Männlich
Re:Suchen und Ersetzen in LotusScript
« Antwort #4 am: 25.11.02 - 13:48:00 »
Ich habe dank euch nun wieder so einiges dazu gelernt, z.b. das man mit Evaluate(), @Funktionen aus LotusScript heraus ausrufen kann.

Hmm gibt es im Web gute Ressourcen für fertige Funktionen? Oder habt Ihr das Web einfach nach gut glück durchsucht?
Windows NT 4.0 SP6a - Lotus Domino Enterprise Server 5.0.11

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Suchen und Ersetzen in LotusScript
« Antwort #5 am: 25.11.02 - 13:52:48 »
... Evaluate funktioniert nicht mit allen Formeln - interaktive Elemente wie @DialogBox zum Beispiel funzen nicht...

... es gibt im Web verschiedene Forums, fast alle sind englischsprachig, gemeinsam ist denen, daß sie Suchmasken haben. Wenn man nach dem richtigen Begriff sucht und nicht allzu schnell aufgibt wird man sehr oft fündig...

... viel Code haben ich vom LDD-Forum unter www.notes.net...

ata
Grüßle Toni :)

Offline Rob Green

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.651
  • Geschlecht: Männlich
    • Meipor
Re:Suchen und Ersetzen in LotusScript
« Antwort #6 am: 25.11.02 - 14:28:37 »
oder auch nett:
eknori´s Seite
oder
http://searchdomino.techtarget.com/tips/0,289484,sid4_tax283833,00.html (Lotus 411, massig Codes)
Vielleicht verdirbt Geld wirklich den Charakter.
Auf keinen Fall aber macht Mangel an Geld ihn besser.
(John Steinbeck)

Meiporblog: http://www.meipor.de/blog
allg. Unternehmerblog: http://www.m-e-x.de/blog

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re:Suchen und Ersetzen in LotusScript
« Antwort #7 am: 25.11.02 - 14:50:05 »
yoo, z.B. hier dies

http://www.eknori.de/tips/uml.htm  ;D ;D

Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz