DISKUSE
Rámec nebo okno ? (3)
30.01.2023 10:29

Vylepseni designera 9.01 
27.01.2023 12:17

Jak resit casove narocneho agent na frontendu (13)
25.01.2023 19:15

Mizející nátev template (2)
19.01.2023 15:58

profile 
09.01.2023 13:18

Více kategorií klíčů (1)
28.11.2022 12:53

Příliš mnoho textu ve vzorcích pohledu (11)
03.11.2022 15:51

Varianta neobsahuje kontejner (2)
17.10.2022 14:43


ŠKOLENÍ


REKLAMA


KOMENTÁŘE

Ekvivalent @ReplaceSubstring v LotusScriptu

Vytisknout článek

Nesmírně užitečnou funkcí formulového jazyka je @ReplaceSubstring a je kupodivu, že její ekvivalent nebyl implementován i v LotusScriptu. Většina programátorů si jej samozřejmě napsala jako funkci, tady je jedna z poměrně efektivních implementací (pochází z diskuzního fóra).


Nesmírně užitečnou funkcí formulového jazyka je @ReplaceSubstring a je kupodivu, že její ekvivalent nebyl přímo implementován i v LotusScriptu. Většina programátorů si jej samozřejmě napsala jako funkci, tady je jedna z poměrně efektivních implementací (pochází z diskuzního fóra).

Funkce má tři vstupní parametry:

sourcestr - prohledávaný řetězec
fromstr - nahrazovaný řetězec
tostr - nahrazující řetězec

Výstupem je nový (nahrazený) řetězec.

Například:
newString = ReplaceSubstring("abcdef", "b", "x")
vrátí newString s hodnotou "axcdef".

Function ReplaceSubstring(sourcestr As String, fromstr As String, tostr As String) As String
Dim tempstr As String
tempstr = sourcestr
If Len(fromstr) = 0 Then
ReplaceSubstring = sourcestr
Exit Function
End If
While Instr(tempstr, fromstr) <> 0
tempstr = Left(tempstr, Instr(tempstr, fromstr)-1) & tostr & Mid(tempstr, Instr(tempstr, fromstr)+Len(fromstr))
Wend
ReplaceSubstring = tempstr
End Function

Pozor na to, že funkce nepracuje na rozdíl od jejího ekvivalentu ve formulovém jazyku s "listy", resp. s poli jako jejich obdobou, ale pouze s řetězci.


Autor: Zdeněk Michálek
Datum: 20.03.2001


Sdílet článek Seznam komentářů

Zatím nebyl přidán žádný komentář. Buďte první!