Strengfunksjoner
Denne delen inneholder korte beskrivelser av funksjonene som gjelder for strengverdier.
Funksjon | Hva den gjør |
---|---|
convert | Konverterer en streng til en annen datatype eller konverterer en annen datatype til en streng. |
decode | Konverterer et kodet strenguttrykk tilbake til den opprinnelige strengen. |
encode | Konverterer et strenguttrykk til en meningsløs tekststreng. |
hex | Oversetter en strenglitteral som inneholder heksadesimale tegnkoder, til en ASCII-streng. |
in_set | Returnerer den boolske verdien sann hvis én streng bare består av tegn fra en annen streng. |
is_number | Returnerer den boolske verdien sann hvis et strenguttrykk resulterer i en flytetalls- eller heltallsverdi. |
is_time | Returnerer den boolske verdien sann hvis et strenguttrykk resulterer i en gyldig tidsverdi. |
len | Returnerer lengden på en streng. |
Endret tegnene i strengen til store eller små bokstaver. | |
Sletter tomme eller oppgitte tegn fra starten (ltrim), slutten (rtrim) eller begge ender (trim) av en streng. | |
max | Returnerer den største verdien fra en liste over uttrykk for en hvilken som helst datatype som støttes. |
min | Returnerer den minste verdien fra en liste over uttrykk for en hvilken som helst datatype som støttes. |
numbertostring | Konverterer et flytetalls- eller heltallsuttrykk til et strenguttrykk ved hjelp av en oppgitt maske. |
repeat | Oppretter en streng ved å gjenta en annen streng et oppgitt antall ganger. |
strins | Setter inn én streng i en annen streng på et oppgitt sted. |
strloc | Returnerer startposisjonen til en delstreng i en streng. Hvis delstrengen ikke blir funnet, returnerer funksjonen null. |
stringtotime | Konverterer et strenguttrykk til et tidsuttrykk ved hjelp av en oppgitt maske. |
substitute | Erstatter en delstreng med en annen i en streng. |
substr | Returnerer en delstreng med en oppgitt startposisjon og -lengde. |
timetostring | Konverterer et tidsuttrykk til et strenguttrykk ved hjelp av en oppgitt maske. |
translate | Erstatter tegn i en streng. |
xmlencode | Konverterer et XML-felt til et strenguttrykk. |
xmldecode | Konverterer et strenguttrykk til XML. |
hex
Denne funksjonen oversetter en strenglitteral med heksadesimale tegnkoder til en ASCII-streng. Hex-funksjonen kan uttrykke et hvilket som helst tegn, selv om du vanligvis bruker den for tegn som ikke har ASCII-representasjoner, for eksempel tabulatortegn.
hex (hex_codes)
der
hex_codes er en strenglitteral som inneholder hex-koden for et tegn
eller en serie med tegn.hex ("616263")
translate
Denne funksjonen oppretter en ny streng ved å erstatte tegnene i én streng med tegnene du oppgir. Funksjonen translate er nyttig for å kode tegn.
translate (source_string, search_string,
replace_string)
der:Parameter | Beskrivelse |
---|---|
source_string | Strengen som inneholder tegnene som skal erstattes. |
search_string | Strengen med tegn i source_string som skal erstattes. Må ha samme lengde som replace_string. |
replace_string | Strengen med erstatningstegn. Må ha samme lengde som search_string. |
Søk og erstatt skjer per tegn. Hvis søkestrengen er "abc" og erstatningsstrengen er "def", oversetter funksjonen "a" til "d", "b" til "e" og "c" til "f" i den nyopprettede strengen.
source_string inneholder "*123-#44-!999"
search_string inneholder "#*!-"
replace_string inneholder "XYZ&"
viser funksjonen følgende nye streng:Y123&X44&Z999
Legg merke til at innholdet i kildestrengen, søkestrengen og erstatningsstrengen ikke endres.
translate (str, ".,", ",.")
lower, upper
lower (string_exp)
upper (string_exp)
der string_exp er strenguttrykket
som skal konverteres.in_set
Denne funksjonen sammenligner to strenger, og returnerer den boolske verdien sann hvis hvert tegn i den første strengen finnes et sted i den andre strengen. Hvis den første strengen inneholder minst ett tegn som heller ikke finnes i den andre strengen, returnerer funksjonen verdien usann. Tegnene trenger ikke å vises i samme rekkefølge i begge strengene. I tillegg kan den andre strengen inneholde flere tegn.
in_set (subset_string, superset_string)
der:Parameter | Beskrivelse |
---|---|
subset_string | Strenguttrykket inneholder bare delsettegnene. |
superset_string | Strenguttrykket som subset_string sammenlignes med. |
in_set (navn, "abcdefghijklmnopqrstuvwxyz")
funksjonen returnerer sann (true) hvis navnet = "jim",
men usann (false) hvis
navnet = "Fido"
eller navnet = "a.b"
len
len (string_expr)
der
string_expr er et strenguttrykk der lengden skal beregnes.len ("Hamilton Burger")
repeat
repeat (string_expr, repeat_num)
der:Parameter | Beskrivelse |
---|---|
string_expr | Strenguttrykket som skal gjentas. |
repeat_num | Antallet ganger string_exp skal gjentas. |
repeat ("abcd", 5)
strloc
En delstreng er en del av en kildestreng. Den kan være mindre enn eller lik lengden på kildestrengen. For eksempel er God, mor, od morge og God morge delstrenger av God morgen.
Bruk funksjonen strloc for å finne hvor en bestemt delstreng finner sted i en kildestreng. Denne funksjonen returnerer starttegnposisjonen til delstrengen i kildestrengen.
Hvis delstrengen finnes i kildestrengen mer enn én gang, returnerer funksjonen startposisjonen til den første forekomsten. Hvis delstrengen ikke blir funnet, eller hvis delstrengen er lengre enn kildestrengen, returnerer funksjonen null.
strloc (source_string, sub_string)
der:Parameter | Beskrivelse |
---|---|
source_string | Strengen der det skal søkes etter delstrengen. |
sub_string | Strengen det skal søkes etter. |
strloc ("God morgen", "morgen")
substr
Denne funksjonen trekker ut en delstreng fra en kildestreng, og oppretter dermed en ny streng. Du oppgir kildestrengen og tegnposisjonen der uttrekkingen starter. I tillegg kan du eventuelt angi antallet tegn som skal trekkes ut. Hvis du ikke angir denne informasjonen, slutter uttrekkingen på slutten av kildestrengen.
substr (source_string, start_pos {, length})
der:Parameter | Beskrivelse |
---|---|
source_string | Kildestrengen. |
start_pos | Tegnposisjonen der uttrekkingen starter. |
length | Antallet tegn som skal trekkes ut (for eksempel lengde på strengen som er trukket ut). |
substr ("God morgen!", 6, 7)
Denne funksjonen kan også trekke ut strenger med lengde på null (strenger uten tegn mellom anførselstegnene) i en posisjon på én mer enn lengden på en streng. Denne bruken er nyttig for algoritmer som har strenger med lengde på null, som en kantbetingelse. Du kan trekke ut tegn fra posisjon 1 til og med det siste tegnet i strengen +1. Det vil si at posisjon 1 og lengden på strengen +1 er kantbetingelser.
Det oppstår kjøretidsfeil hvis:
- Startposisjonen er mindre enn 1 eller større enn lengden på kildestrengen + 1.
- Den oppgitte lengden vil gi en delstreng som er lengre enn de gjenstående tegnene i kildestrengen (det vil si start_pos + length > len (source_string) + 1).
strins
strins (source_string, insert_string, start_pos)
der:Parameter | Beskrivelse |
---|---|
source_string | Strengen som skal slås sammen med insert_string for å lage en ny streng. |
insert_string | Strengen som skal slås sammen med source_string for å lage en ny streng. |
start_pos | Posisjonen i source_string der innsettingen starter. Verdiene er fra 1 til lengden på source_string + 1. Det oppstår en kjøretidsfeil hvis du oppgir en verdi som er mindre enn 1 eller større enn source_string + 1. |
insert_str = "Mr. Jones"
og
source_str = "God morgen, for en vakker dag.
strins (source_str, insert_str, 15)
God morgen Hr. Jensen, for en vakker dag.
substitute
substitute (source_string, unwanted_string,
replacement_string)
der:Parameter | Beskrivelse |
---|---|
source_string | Strengen som inneholder unwanted_string. |
unwanted_string | En delstreng av source_string. |
replacement_string | Strengen som skal erstatte unwanted_string for å opprette en ny streng. |
substitute (TestString, "abc", "wxyz")
TestString = "abcdabcd",
returnerer funksjonen følgende nye streng:wxyzdwxyzd
Legg merke til at innholdet
i kildestrengen, den uønskede strengen og erstatningsstrengen
ikke endres.ltrim, rtrim og trim
Disse funksjonene oppretter en ny streng ved å kopiere en eksisterende kildestreng og slette tomme tegn eller oppgitte tegn fra starten (ltrim), slutten (rtrim) eller begge ender (trim) i den nye strengen. I alle tilfeller forblir kildestrengen uendret.
ltrim (string_expr{, trim_char}opt)
rtrim (string_expr{, trim_char}opt)
trim (string_expr{, trim_char}opt)
der:Parameter | Beskrivelse |
---|---|
string_expr | Kildestrenguttrykket som skal kopieres. |
trim_char | En valgfri parameter som oppgir tegnene som skal slettes fra den nye strengen. Hvis du ikke oppgir denne parameteren, slettes tomme tegn. Avhengig av funksjonen starter slettingen enten på begynnelsen, slutten eller på begge ender av den nye strengen, og fortsetter til det blir funnet et tegn som ikke er oppgitt i trim_char (eller ikke er tomt). |
LastName = "Smith",
og den returnerte nye strengen e
"Smith"
ltrim (LastName)
Status = "OpenXY&Z&&&&",
er den returnerte nye strengen
"OpenXY&Z"
rtrim (Status, "&")
rtrim (AccountName, "0123456789")
is_number
Denne funksjonen fastslår om det oppgitte strenguttrykket resulterer i en flytetalls- eller heltallsverdi. Funksjonen is_number returnerer den boolske verdien sann hvis hele strengen (ikke bare en delstreng) resulterer i en flytetalls- eller heltallsverdi og ellers usann.
is_number (expr)
der
expr er et strenguttrykk.is_number ("123.4")
is_number ("no")
is_number ("abc63j")
is_time
Denne funksjonen fastslår om det oppgitte strenguttrykket resulterer i en tidsverdi i et oppgitt format. is_time-funksjonen returnerer den boolske verdien sann hvis hele strengen (ikke bare en delstreng) resulterer i en tid som er formatert som angitt. Ellers returnerer funksjonen verdien false.
is_time (str_expr, date_time_mask)
der:Parameter | Beskrivelse |
---|---|
str_expr | Et strenguttrykk. |
date_time_mask | En dato-/tidsmaske som oppgir formatet som str_expr må bruke for at is_time kan returnere verdien sann. |
is_time ("nov121995", "mm/dd/yyyy")
is_time ("11/12/1995", "mm/dd/yyyy")
timetostring
timetostring (time_expr, date_time_mask)
der:Parameter | Beskrivelse |
---|---|
time_expr | Et uttrykk av typen tid. |
date_time_mask | En dato-/tidsmaske som fastslår formatet til utdataene for funksjonen timetostring. |
timetostring (systemtime(), "mm/dd/yyyy hh:tt:ss am")
01.07.1985 12:45:06
Se informasjon om funksjonen systemtime().
stringtotime
stringtotime (string_expr, date_time_mask)
der:Parameter | Beskrivelse |
---|---|
string_expr | Et uttrykk av typen streng. |
date_time_mask | En dato-/tidsmaske som oppgir tidsformatet som skal brukes for konverteringen. |
stringtotime (HostTime, "mon. dd, yyyy hh:tt:ss am")
HostTime = "1. juli 1985 12:45:06",
vil de resulterende
utdataene være tidsverdien lik 1. juli 1985, 6 sekunder etter
12:45.encode, decode
Disse funksjonene konverterer strenger til meningsløse strenger for å skjule innholdet. Både encode og decode må være i samme arbeidsflyt.
encode (string_expr)
decode (string_expr)
der:Parameter | Beskrivelse |
---|---|
string_expr | Et uttrykk av typen streng. Strengen kan ikke være en litteral. |