IBM FileNet P8, Version 5.2.1            

Strengfunktioner

Dette afsnit indeholder korte beskrivelser af de funktioner, der gælder for strengværdier.

Tabel 1. Tabel over funktioner og deres formål
Funktion Virkemåde
convert Konverterer en streng til en anden datatype eller konverterer en anden datatype til en streng.
decode Konverterer et kodet strengudtryk tilbage til den oprindelige streng.
encode Konverterer et strengudtryk til en tekststreng uden mening.
hex Oversætter en strengkonstant, der indeholder hexadecimale tegnkoder, til en ASCII-streng.
in_set Returnerer den booleske værdi true, hvis én streng udelukkende består af tegn fra en anden streng.
is_number Returnerer den booleske værdi true, hvis et strengudtryk evalueres til en flydende værdi eller en heltalsværdi.
is_time Returnerer den booleske værdi true, hvis et strengudtryk evalueres til en gyldig tidsværdi.
len Returnerer længden på en streng.

lower

upper

Ændrer en strengs tegn til små eller store bogstaver.

ltrim

rtrim

trim

Sletter blanktegn eller angivne tegn fra starten (ltrim), slutningen (rtrim) eller begge ender (trim) af en streng.
max Returnerer den største værdi fra en liste over udtryk af enhver understøttet datatype.
min Returnerer den mindste værdi fra en liste over udtryk af enhver understøttet datatype.
numbertostring Konverterer et flydende udtryk eller et heltalsudtryk til et strengudtryk ved hjælp af en angiven maske.
repeat Opretter en streng ved at gentage en anden streng et angivet antal gange.
strins Indsætter én streng i en anden på en bestemt placering.
strloc Returnerer startpositionen for en understreng i en streng. Hvis understrengen ikke findes, returnerer funktionen nul.
stringtotime Konverterer et strengudtryk til et tidsudtryk ved hjælp af en angiven maske.
substitute Erstatter en understreng med en anden i en streng.
substr Returnerer en understreng ud fra en angivet startposition og længde.
timetostring Konverterer et tidsudtryk til et strengudtryk ved hjælp af en angiven maske.
translate Erstatter tegn i en streng.
xmlencode Konverterer et XML-felt til et strengudtryk.
xmldecode Konverterer et strengudtryk til XML.

hex

Denne funktion oversætter en strengkonstant med hexadecimale tegnkoder til en ASCII-streng. Funktionen hex kan udtrykke ethvert tegn, men normalt bruger man den til tegn, der ikke har ASCII-repræsentationer, f.eks. tabulatorer.

Hvert andet hex-ciffer repræsenterer ét tegn i den resulterende streng. Hvis der er et ulige antal hex-tegn i strengen, opstår der en fejl. Brug følgende syntaks:
hex (hexkoder)
hvor hexkoder er en strengkonstant, der indeholder hexkoden for et tegn eller en serie af tegn.
I følgende eksempel returneres strengen abc, fordi 61, 62 og 63 er hexadecimale koder for disse tegn.
hex ("616263")

translate

Denne funktion opretter en ny streng ved at erstatte tegnene i én streng med de tegn, du angiver. Funktionen translate er nyttig ved kodning af tegn.

Brug følgende syntaks:
translate (kildestreng, søgestreng,
erstatningsstreng)
hvor:
Tabel 2. Parametre til og beskrivelse af funktionen translate
Parameter Beskrivelse
kildestreng Den streng, der indeholder de tegn, som skal erstattes.
søgestreng Den tegnstreng i kildestreng, som skal erstattes. Skal have samme længde som erstatningsstreng.
erstatningsstreng Strengen med erstatningstegn. Skal have samme længde som søgestreng.

Søg og erstat finder sted tegn for tegn. Hvis søgestrengen er "abc" og erstatningsstrengen er "def", oversætter funktionen "a" til "d", "b" til "e" og "c" til "f" i den nye streng.

Med følgende værdier, hvor
kildestreng indeholder "*123-#44-!999"
søgestreng indeholder "#*!-"
erstatningsstreng indeholder "XYZ&"
giver funktionen følgende nye streng som output:
Y123&X44&Z999

Bemærk, at indholdet af kildestrengen, søgestrengen og erstatningsstrengen ikke ændres.

Tip: Hvis du vil søge efter og erstatte en hel understreng i stedet for enkelte tegn, skal du bruge funktionen substitute.
I følgende eksempel bruges funktionen translate til at konvertere en streng fra europæisk talformat til amerikansk talformat.
translate (str, ".,", ",.")

lower, upper

Disse funktioner konverterer alle tegn i en streng til hhv. små og store bogstaver. Brug følgende syntaks:
lower (strengudtryk)

upper (strengudtryk)
hvor strengudtryk er det strengudtryk, der skal konverteres.

in_set

Denne funktion sammenligner to strenge og returnerer den booleske værdi true, hvis alle tegn i den første streng er indeholdt et sted i den anden streng. Hvis den første streng indeholder mindst ét tegn, som ikke også er indeholdt i den anden streng, returnerer funktionen værdien false. Tegnene behøver ikke at stå i samme rækkefølge i begge strenge, og den anden streng kan også indeholde yderligere tegn.

Brug følgende syntaks:
in_set (delmængdestreng, overmængdestreng)
hvor:
Tabel 3. Parametre til og beskrivelse af funktionen in_set
Parameter Beskrivelse
delmængdestreng Det strengudtryk, der kun indeholder delmængdetegnene.
overmængdestreng Det strengudtryk, som delmængdestreng skal sammenlignes med.
I følgende eksempel,
in_set (navn, "abcdefghijklmnopqrstuvwxyz")
returnerer funktionen true, hvis
navn = "jim"
men false, hvis
navn = "Fido"
eller
navn = "a.b"

len

Denne funktion beregner den faktiske (ikke den erklærede) længde af et strengudtryk. Den giver det samlede antal tegn, herunder mellemrum, i udtrykket. Brug følgende syntaks:
len (strengudtryk)
hvor strengudtryk er et strengudtryk, hvis længde skal beregnes.
I følgende eksempel returneres længden 15. Bemærk, at anførselstegnene ikke regnes med som tegn.
len ("Hamilton Burger")

repeat

Denne funktion opretter en streng ved at gentage en angivet streng et angivet antal gange. Brug følgende syntaks:
repeat (strengudtryk, antal_gentagelser)
hvor:
Tabel 4. Parametre til og beskrivelse af funktionen repeat
Parameter Beskrivelse
strengudtryk Det strengudtryk, der skal gentages.
antal_gentagelser Det antal gange, som strengudtryk skal gentages.
I følgende eksempel er outputtet strengen abcdabcdabcdabcdabcd.
repeat ("abcd", 5)

strloc

En understreng er en del af kildestrengen. Den kan være mindre end eller lig med længden af kildestrengen. Eksempelvis er God, morg, od morge og God morge alle understrenge af God morgen.

Brug funktionen strloc til at undersøge, hvor en bestemt understreng findes i en kildestreng. Denne funktion returnerer positionen af starttegnet for understrengen i kildestrengen.

Hvis understrengen findes mere end én gang i kildestrengen, returnerer funktionen startpositionen af den første forekomst. Hvis understrengen ikke findes, eller hvis den er længere end kildestrengen, returnerer funktionen nul.

Brug følgende syntaks:
strloc (kildestreng, understreng)
hvor:
Tabel 5. Parametre til og beskrivelse af funktionen strloc
Parameter Beskrivelse
kildestreng Den streng, hvor der skal søges efter understrengen.
understreng Den streng, der skal søges efter.
I dette eksempel returneres værdien 5, fordi understrengen starter i position 5 i kildestrengen.
strloc ("God morgen", "morgen")

substr

Denne funktion udtrækker en understreng fra en kildestreng, hvorved der oprettes en ny streng. Du angiver kildestrengen og den tegnposition, hvor udtrækket starter. Desuden kan du vælge at angive det antal tegn, der skal udtrækkes. Hvis du ikke angiver disse oplysninger, stopper udtrækket sidst i kildestrengen.

Brug følgende syntaks:
substr (kildestreng, startpos {, længde})
hvor:
Tabel 6. Parametre til og beskrivelse af funktionen substr
Parameter Beskrivelse
kildestreng Kildestrengen.
startpos Den tegnposition, hvor udtrækket starter.
længde Det antal tegn, der skal udtrækkes (f.eks. længden af den udtrukne streng).
I følgende eksempel returneres strengen morgen. Bemærk, at anførselstegnene ikke tæller som en del af strengen.
substr ("God morgen!", 6, 7)

Denne funktion kan også udtrække strenge med længden nul (strenge uden tegn mellem anførselstegnene) på en position, der er én større end længden af en streng. Dette er nyttigt ved algoritmer, som har strenge med længden nul som kantbetingelse. Du kan udtrække tegn fra position 1 til og med sidste tegn i strengen +1;, så position 1 og længden af strengen +1 er kantbetingelser.

Der opstår runtimefejl, hvis:

  • Din startposition er mindre end 1 eller større end kildestrengens længde + 1.
  • Den angivne længde vil frembringe en understreng, som er længere end de tilbageværende tegn i kildestrengen (dvs. startpos + længde > len (kildestreng) + 1).

strins

Denne funktion indsætter én streng i en anden streng, hvorved der oprettes en ny streng. Værdierne af kildestrengen og indsættelsesstrengen ændres ikke. Brug følgende syntaks:
strins (kildestreng, indsættelsesstreng, startpos)
hvor:
Tabel 7. Parametre til og beskrivelse af funktionen strins
Parameter Beskrivelse
kildestreng Den streng, der kombineres med indsættelsesstreng for at frembringe en ny streng.
indsættelsesstreng Den streng, der kombineres med kildestreng for at frembringe en ny streng.
startpos

Den position i kildestreng, hvor indsættelsen starter. Værdien går fra 1 til længden af kildestreng + 1.

Der opstår en runtimefejl, hvis du angiver en værdi, der er mindre end 1 eller større end kildestreng + 1.

I eksemplet herunder antager vi, at
indsættelsesstreng = "Jan Olsen,"
og at
kildestreng = "God morgen, sikke en dejlig dag."
strins (kildestreng, indsættelsesstreng, 13)
Med ovennævnte værdier returnerer funktionen følgende streng:
God morgen, Jan Olsen, sikke en dejlig dag.

substitute

Denne funktion opretter en ny streng ved at erstatte én understreng med en anden i en angivet kildestreng. Brug følgende syntaks:
substitute (kildestreng, uønsket_streng,
erstatningsstreng)
hvor:
Tabel 8. Parametre til og beskrivelse af funktionen substitute
Parameter Beskrivelse
kildestreng Den streng, der indeholder uønsket_streng.
uønsket_streng En understreng af kildestreng.
erstatningsstreng Den streng, der skal erstatte uønsket_streng for at oprette en ny streng.
I følgende eksempel erstattes alle forekomster af abc i Teststreng med wxyz. Erstatningen sker fra venstre mod højre.
substitute (Teststreng, "abc", "wxyz")
Hvis
Teststreng = "abcdabcd"
returnerer funktionen følgende nye streng:
wxyzdwxyzd
Bemærk, at indholdet af kildestrengen, den uønskede streng og erstatningsstrengen ikke ændres.
Tip: Hvis du vil søge efter og erstatte enkelttegn i stedet for en understreng, skal du bruge funktionen translate.

ltrim, rtrim og trim

Disse funktioner opretter en ny streng ved at kopiere en eksisterende kildestreng og slette blanktegn eller angivne tegn fra starten (ltrim), slutningen (rtrim) eller begge ender (trim) i den nye streng. I alle tilfælde forbliver kildestrengen uændret.

Brug følgende syntaks for alle tre funktioner:
ltrim (strengudtryk{, trim_tegn}parameter)

rtrim (strengudtryk{, trim_tegn}parameter)

trim (strengudtryk{, trim_tegn}parameter)
hvor:
Tabel 9. Parametre til og beskrivelse af funktionerne trim, ltrim og rtrim
Parameter Beskrivelse
strengudtryk Det kildestrengudtryk, der skal kopieres.
trim_tegn

En valgfri parameter, der angiver de tegn, som skal slettes fra den nye streng. Hvis du ikke angiver denne parameter, slettes blanktegn.

Afhængig af funktionen starter sletningen enten i starten, slutningen eller begge ender af den nye streng og fortsætter, indtil der findes et tegn, som ikke er angivet i trim_tegn (eller et ikke-tomt tegn).

I følgende eksempel slettes alle foranstillede blanktegn fra Efternavn. I eksemplet er
Efternavn = "Smith"
og den returnerede nye streng er
"Smith"
ltrim (Efternavn)
I eksemplet nedenfor slettes tegnet & fra slutningen af strengen Status. Hvis
Status = "ÅbenXY&Z&&&&"
, er den returnerede nye streng
"ÅbenXY&Z"
rtrim (Status, "&")
I følgende eksempel slettes alle efterstillede cifre fra Kontonavn.
rtrim (Kontonavn, "0123456789")

is_number

Denne funktion bestemmer, om det angivne strengudtryk evalueres til en flydende værdi eller en heltalsværdi. Funktionen is_number returnerer den booleske værdi true, hvis hele strengen (ikke kun en understreng) evalueres til en flydende værdi eller en heltalsværdi. Ellers returneres false.

Brug følgende syntaks:
is_number (udtryk)
hvor udtryk er et strengudtryk.
I følgende eksempel returneres henholdsvis true, false og false.
is_number ("123,4")

is_number ("nej")

is_number ("abc63j")

is_time

Denne funktion bestemmer, om det angivne strengudtryk evalueres til en tidsværdi af et angivet format. Funktionen is_time returnerer den booleske værdi true, hvis hele strengen (ikke kun en understreng) evalueres til et klokkeslæt, der er formateret som angivet. Ellers returnerer funktionen værdien false.

Brug følgende syntaks:
is_time (strengudtryk, dato_klokkeslæt_maske)
hvor:
Tabel 10. Parametre til og beskrivelse af funktionen is_time
Parameter Beskrivelse
strengudtryk Et strengudtryk.
dato_klokkeslæt_maske En dato/klokkeslæt-maske, der angiver det format, som strengudtryk skal bruge, for at is_time skal returnere værdien true.
Herunder returnerer det første eksempel false, og det andet eksempel true. I begge eksempler bruges funktionen convert til at konvertere datatypen time, så funktionen is_time kan evalueres.
is_time ("12nov1995", "dd-mm-yyyy")

is_time ("12-11-1995", "dd-mm-yyyy")

timetostring

Denne funktion konverterer et tidsudtryk til et strengudtryk ved hjælp af det format, du angiver. Brug følgende syntaks:
timetostring (tidsudtryk, dato_klokkeslæt_maske)
hvor:
Tabel 11. Parametre til og beskrivelse af funktionen timetostring
Parameter Beskrivelse
tidsudtryk Et udtryk af typen time.
dato_klokkeslæt_maske En dato/klokkeslæt-maske, der bestemmer formatet af outputtet fra funktionen timetostring.
I følgende eksempel konverteres systemtiden til en streng. Strengen formateres ved hjælp af den angivne dato/klokkeslæt-maske.
timetostring (systemtime(), "dd-mm-yyyy hh:tt:ss")
Hvis systemtime() i ovenstående eksempel svarer til 1. juli 1985 klokken 6 sekunder over 22:45, er strengoutputtet:
01-07-1985 22:45:06

Se oplysninger om funktionen systemtime().

stringtotime

Denne funktion konverterer strenge til tider ved hjælp af det format, du angiver. Brug følgende syntaks:
stringtotime (strengudtryk, dato_klokkeslæt_maske)
hvor:
Tabel 12. Parametre til og beskrivelse af funktionen stringtotime
Parameter Beskrivelse
strengudtryk Et udtryk af typen string.
dato_klokkeslæt_maske En dato/klokkeslæt-maske, der angiver det tidsformat, som skal bruges til konverteringen.
I følgende eksempel er Værtstid en strengvariabel.
stringtotime (HostTime, "mon. dd, yyyy hh:tt:ss am")
Hvis
Værtstid = "1. jul. 1985 22:45:06"
, bliver outputtet tidsværdien, som svarer til 1. juli 1985 6 sekunder over 22:45.

encode, decode

Disse funktioner konverterer strenge til strenge uden mening med det formål at skjule indholdet. Både funktionen encode og funktionen decode skal være i samme arbejdsgang.

Funktionen decode kan bruges til at konvertere et strengudtryk, der indeholder flere kodede strenge.
encode (strengudtryk)

decode (strengudtryk)
hvor:
Tabel 13. Parametre til og beskrivelse af funktionerne decode og encode
Parameter Beskrivelse
strengudtryk Et udtryk af typen string. Strengen kan ikke være en konstant.


Senest opdateret: Marts 2016
bpfe012.htm

© Copyright IBM Corp. 2016.