Come configurare smartphone e PC. Portale informativo
  • casa
  • Errori
  • 1c 8.3 funzioni di stringa. Nuove funzioni di stringa

1c 8.3 funzioni di stringa. Nuove funzioni di stringa

Implementato nella versione 8.3.6.1977.

Abbiamo ampliato il set di funzioni per lavorare con le stringhe. Lo abbiamo fatto per offrirti strumenti più avanzati per l'analisi dei dati delle stringhe. Nuove funzioni saranno convenienti e utili nelle attività tecnologiche di analisi del testo. Nelle attività relative all'analisi del testo che contiene dati in una forma formattata. Può trattarsi dell'analisi di alcuni file ricevuti dall'apparecchiatura o, ad esempio, dell'analisi di un log tecnologico.

Tutte le azioni eseguite dalle nuove funzioni, potresti eseguire prima. Con l'aiuto di algoritmi più o meno complessi scritti in un linguaggio embedded. Pertanto, le nuove funzioni non offrono opportunità fondamentalmente nuove. Tuttavia, consentono di ridurre la quantità di codice, renderlo più semplice e comprensibile. Inoltre, consentono di accelerare l'esecuzione delle azioni. Perché le funzioni implementate nella piattaforma funzionano, ovviamente, più velocemente di un algoritmo simile scritto nel linguaggio integrato.

Funzione di formattazione StrTemplate()

Questa funzione sostituisce i parametri in una stringa. La necessità di tale conversione sorge spesso, ad esempio, durante la visualizzazione di messaggi di avviso. La sintassi per questa funzione è la seguente:

StrTemplate(<Шаблон>, <Значение1-Значение10>)

<Шаблон>è la stringa in cui sostituire le rappresentazioni dei parametri.

<Значение1> , ... <Значение10>- questi sono i parametri (massimo - dieci), le cui rappresentazioni devono essere sostituite nella stringa.

Per specificare una posizione specifica nel modello a cui si desidera eseguire la sostituzione, è necessario utilizzare indicatori del formato %1, ... %10. Il numero di marcatori coinvolti nel modello e il numero di parametri contenenti valori devono corrispondere.

Ad esempio, il risultato dell'esecuzione di tale operatore:

ci sarà una riga:

Errore di dati sulla riga 2 (richiede il tipo di data)

Funzione stringa StrCompare()

Questa funzione confronta due stringhe senza distinzione tra maiuscole e minuscole. Ad esempio, in questo modo:

È possibile eseguire la stessa azione prima di utilizzare l'oggetto ValueComparison:

Tuttavia, l'utilizzo della nuova funzione sembra più semplice. Inoltre, la funzione, a differenza dell'oggetto Value Compare, funziona sia nel thin client che nel web client.

Funzioni stringa StrBeginsC(), StrEndsTo()

Queste funzioni determinano se una stringa inizia con una sottostringa specificata o se una stringa termina con una sottostringa specificata. L'algoritmo di queste funzioni non è difficile da implementare in un linguaggio built-in, ma la loro presenza permette di scrivere codice più pulito e comprensibile. E funzionano più velocemente.

Ad esempio, sono convenienti da usare nell'istruzione If:

Funzioni per lavorare con le stringhe StrSplit(), StrJoin()

Queste funzioni suddividono la stringa in parti in base al delimitatore specificato. O viceversa, uniscono più righe in una, inserendo tra di loro il separatore selezionato. Sono utili per creare o analizzare registri, un registro tecnologico. Ad esempio, puoi facilmente smontare una voce di registro tecnologico in parti adatte per ulteriori analisi:

Funzione di lavorare con le stringhe StrFind()

Invece della vecchia funzione Find(), abbiamo implementato una nuova funzione che ha caratteristiche aggiuntive:

  • Cerca in diverse direzioni (dall'inizio, dalla fine);
  • Cerca dalla posizione specificata;
  • Cerca un'occorrenza con il numero specificato (secondo, terzo, ecc.).

In effetti, duplica le capacità della vecchia funzione. Questo viene fatto per mantenere la compatibilità con i moduli compilati nelle versioni precedenti. Si consiglia di non utilizzare più la vecchia funzione Find().

Di seguito è riportato un esempio di utilizzo delle nuove funzionalità di ricerca. La ricerca all'indietro è utile quando è necessario l'ultimo pezzo di una stringa formalizzata, ad esempio il nome completo di un file in un URL. E la ricerca da una posizione specificata aiuta nei casi in cui è necessario cercare in un frammento noto e non nell'intera stringa.

Il tipo String si trova in tutti i linguaggi di programmazione. È primitivo e in 1C ci sono molte funzioni per lavorarci. In questo articolo considereremo in dettaglio i vari modi di lavorare con i tipi di stringa in 1C 8.3 e 8.2 usando degli esempi.

Linea

Per convertire una variabile di qualsiasi tipo in una stringa, esiste la funzione "Stringa ()" con lo stesso nome. Il parametro di input sarà la variabile stessa, la cui rappresentazione in stringa deve essere ottenuta.

String(False) // restituisce "No"
String(12345) // restituisce "12 345"
Stringa(DataCorrente()) //"21.07.2017 11:55:36"

È possibile convertire in una stringa non solo tipi primitivi, ma anche altri, ad esempio elementi di directory e documenti.

LP abbreviato, L abbreviato, P abbreviato

I parametri di input di queste funzioni sono una variabile di tipo stringa. Le funzioni rimuovono i caratteri insignificanti (spazi, ritorni a capo, ecc.): rispettivamente dai lati sinistro e destro, solo dal lato sinistro e solo da destra.

abbrl("Gli spazi su entrambi i lati verranno rimossi") // "Gli spazi su entrambi i lati verranno rimossi"
abbr("Gli spazi su entrambi i lati verranno rimossi") // "Gli spazi a sinistra verranno rimossi"
abbr("Gli spazi su entrambi i lati verranno rimossi") // "Gli spazi sulla destra verranno rimossi"

Leone, Destra, Medio

Queste funzioni consentono di tagliare parte di una stringa. La funzione Lion() restituirà la parte della stringa sul lato sinistro della lunghezza specificata. La funzione "Right()" è simile, ma il ritaglio viene eseguito a destra. La funzione "Mer()" consente di specificare il numero del carattere da cui verrà selezionata la stringa e la sua lunghezza.

Leone("Variabile stringa", 4) // restituisce "Stro"
Right("Variabile stringa", 7) // restituisce "variabile"
avg("Variabile stringa", 2, 5)// restituisce "troco"

StrLength

La funzione determina il numero di caratteri contenuti in una variabile stringa.

StrLength("Word") // il risultato dell'esecuzione sarà il numero 5

Trovare

La funzione permette di cercare una parte di una stringa in una variabile stringa. Il valore restituito sarà un numero che indica la posizione dell'inizio della stringa trovata. Se non vengono trovate corrispondenze, viene restituito zero.

Tieni presente che la ricerca fa distinzione tra maiuscole e minuscole. Se nella stringa originale è presente più di un'occorrenza della sottostringa di ricerca, la funzione restituirà l'inizio della prima occorrenza.

Find("uno, due, uno, due, tre", "due") // la funzione restituirà il numero 6

Riga vuota

L'utilizzo di questa funzione consente di determinare se una stringa è vuota. I caratteri insignificanti, come spazio, ritorno a capo e altri non vengono presi in considerazione.

EmptyString("Vasily Ivanovich Pupkin") // la funzione restituirà False
EmptyString(" ") // la funzione restituirà True

VReg, NReg, TReg

Queste funzioni sono molto utili durante il confronto e la conversione di variabili stringa. "Vreg()" restituirà la stringa originale in maiuscolo, "HReg()" in minuscolo e "TReg()" lo formatterà in modo che il primo carattere di ogni singola parola sia in maiuscolo e tutti i caratteri successivi siano minuscoli.

VReg("DIRETTORE GENERALE") // valore restituito - "DIRETTORE GENERALE"
HReg("DIRETTORE GENERALE") // valore restituito - "CEO"
TReg("DIRETTORE GENERALE") // valore restituito - "Direttore Generale"

StrSostituisci

Questa funzione è simile alla sostituzione negli editor di testo. Consente di sostituire un carattere o un insieme di caratteri con un altro nelle variabili stringa.

StrReplace("rosso, bianco, giallo", ",", ";") // restituisce "rosso; Bianco; giallo"

StrNumberRows

La funzione consente di determinare il numero di righe separate da un ritorno a capo in una variabile di testo.

Il ciclo nell'esempio seguente passerà attraverso tre cerchi perché la funzione StrNumberRows restituirà il valore 3:

Per ind \u003d 1 per StrNumber of Lines ("Linea1" + Symbols.PS + "String2" + Symbols.PS + "Line3") Ciclo
<тело цикла>
ciclo finale;

StrGetString

Questa funzione funziona con il testo multilinea allo stesso modo della precedente. Ti permette di ottenere una stringa specifica da una variabile di testo.

StrGetString("Stringa1" + Simboli.PS + "Stringa2" + Simboli.PS + "Stringa3", 2) // restituisce "Linea2"

StrNumberOccurrences

La funzione conta il numero di occorrenze di un carattere o di una sottostringa nella stringa cercata.

StrNumberInstallations("a;b;c;d; ", ";") // la funzione restituirà il numero 4

Simbolo e CodiceSimbolo

Queste funzioni ti consentono di ottenere un carattere dal suo codice Unicode, oltre a determinare questo codice dal carattere stesso.

SymbolCode("A") // la funzione restituirà il numero 1 040
SymbolCode(1040) // la funzione restituirà "A"

Attività frequenti quando si lavora con le stringhe

Concatenazione di stringhe

Per concatenare più stringhe (concatenare) basta usare l'operatore di addizione.

"Riga 1" + "Riga 2" //il risultato dell'aggiunta di due righe sarà "Riga 1 Riga 2"

Digita la conversione

Per convertire un tipo in una stringa, ad esempio un riferimento a un elemento del dizionario, un numero e così via, è sufficiente utilizzare la funzione "Stringa ()". Funzioni come "ShortLp()" convertono anche le variabili in una stringa, ma immediatamente tagliando i caratteri insignificanti.

String(1000) // restituirà "1000"

Si noti che quando si converte un numero in una stringa, il programma aggiunge automaticamente uno spazio che separa le migliaia. Per evitare ciò, è possibile utilizzare le seguenti strutture:

StrReplace(String(1000),Characters.NPP,"") // restituisce "1000"

String(Format(1000,"CH=")) // restituirà "1000"

Citazioni in una stringa

Abbastanza spesso dovrai fare i conti con la necessità di mettere le virgolette in una variabile stringa. Può essere sia un testo di richiesta scritto nel configuratore, sia solo una variabile. Per risolvere questo problema, devi solo impostare due virgolette.

Header = String("Horns and Hooves LLC siamo noi!") // restituisce "Roga and Hooves LLC siamo noi!"

Multilinea, interruzione di riga

Per creare un testo multilinea, è sufficiente aggiungere caratteri di interruzione di riga (Symbols.PS).

MultilineText = "Prima riga" + Caratteri.PS + "Seconda riga"

Come rimuovere gli spazi

Per rimuovere gli spazi a destra o a sinistra, puoi utilizzare la funzione "StretchLp()" (oltre a "Scrpt()" e "ScreenP()"):

StringWithoutSpaces = ShortLP("Molte lettere") // la funzione restituirà il valore "Molte lettere"

Se, dopo aver convertito un numero in una stringa, è necessario rimuovere gli spazi unificatori, utilizzare la seguente costruzione:

StringWithoutSpaces = StrReplace(String(99999),Characters.NPP,"") // restituisce "99999"

Inoltre, i programmatori usano spesso la seguente costruzione, che consente di rimuovere o sostituire tutti gli spazi di una variabile di testo con un altro carattere:

StringWithoutSpaces = StrReplace(" ciao", " " ,"") // restituisce "ciao"

Confrontando le stringhe tra loro

Puoi confrontare i termini con il solito segno di uguale. Il confronto fa distinzione tra maiuscole e minuscole.

"ciao" = "ciao" // restituirà false
"Hello" = "Hello" // restituirà True
"Hello" = "Goodbye" // restituirà False

String è uno dei tipi di dati primitivi nei sistemi 1C: Enterprise 8. Variabili con tipo linea contengono testo.

Digitare i valori delle variabili linea sono racchiusi tra virgolette. È possibile aggiungere diverse variabili di questo tipo.

Per1 = "Parola 1" ;
Per2 = "Parola 2" ;
Per3 = Per1 + " " + Per2 ;

Infine Per3 importerà" Parola 1 Parola 2″.

Inoltre, i sistemi 1C:Enterprise 8 forniscono funzioni per lavorare con le stringhe. Considera i principali:

EnterString(<Строка>, <Подсказка>, <Длина>, <Многострочность>) — la funzione è progettata per visualizzare una finestra di dialogo in cui l'utente può specificare il valore di una variabile di tipo Linea. Parametro <Строка> è obbligatorio e contiene il nome della variabile in cui verrà scritta la stringa inserita. Parametro <Подсказка> opzionale è il titolo della finestra di dialogo. Parametro <Длина> facoltativo, indica la lunghezza massima della stringa di input. Il valore predefinito è zero, il che significa lunghezza illimitata. Parametro <Многострочность> opzionale. Specifica la modalità di immissione del testo su più righe: True — immissione di testo su più righe con separatori di riga; False - Immettere una stringa semplice.

È possibile inserire una stringa e, conoscendo il codice del carattere in Unicode:

Simbolo(<КодСимвола>) — Il codice viene inserito come numero.

Lettera= Simbolo(1103 ) ; // IO

C'è anche una funzione inversa che ti permette di scoprire il codice di un carattere.

CodiceSimbolo(<Строка>, <НомерСимвола>) — Restituisce il numero Unicode del carattere specificato come numero.

Funzioni di conversione tra maiuscole e minuscole:

VReg(<Строка>) - Converte tutti i caratteri in una stringa in maiuscolo.

HReg(<Строка>) - Converte tutti i caratteri in una stringa in minuscolo.

TReg(<Строка>) - converte tutti i caratteri della stringa in maiuscolo del titolo. Cioè, le prime lettere di tutte le parole vengono convertite in maiuscole e le lettere rimanenti vengono convertite in minuscole.

Funzioni per la ricerca e la sostituzione di caratteri in una stringa:

Trovare(<Строка>, <ПодстрокаПоиска>) - trova il numero del carattere dell'occorrenza della sottostringa di ricerca. Per esempio:

Trova ("Stringa", "occhio"); // 4

StrTrova(<Строка>, <ПодстрокаПоиска>, <НаправлениеПоиска>, <НачальнаяПозиция>, <НомерВхождения>) — trova il numero di carattere dell'occorrenza della sottostringa di ricerca, il numero di occorrenza è specificato nel parametro corrispondente. In questo caso la ricerca parte dal carattere il cui numero è specificato nel parametro Posizione di partenza. La ricerca è possibile dall'inizio o dalla fine della stringa. Per esempio:

Numero4 Voce= StrTrova( "Difensiva", "o" , Direzione di ricerca. Primo, 1, 4); // 7

StrSostituisci(<Строка>, <ПодстрокаПоиска>, <ПодстрокаЗамены>) Trova tutte le occorrenze della sottostringa di ricerca nella stringa di origine e la sostituisce con la sottostringa di sostituzione.

StrReplace("Stringa" , "occhio" , "" ) ; // Pagina

Riga vuota(<Строка>) - controlla la stringa per i caratteri significativi. Se non sono presenti caratteri significativi o non sono presenti caratteri, viene restituito il valore Vero. Altrimenti - Menzogna.

StrNumberOccurrences(<Строка>, <ПодстрокаПоиска>) – calcola il numero di occorrenze della sottostringa di ricerca nella stringa di origine.

StrNumberOccurrences ( "Studi, studia e studia ancora", "studiare" , "" ) ; // 3

StrTemplate(<Строка>, <ЗначениеПодстановки1>…<ЗначениеПодстановкиN> — sostituisce i parametri nella stringa per numero. La stringa deve contenere indicatori di sostituzione nel formato: "%1..%N". La numerazione dei marker inizia da 1. Se il valore del parametro Non definito, viene sostituita la stringa vuota.

StrPattern ( "Opzione 1 = %1, Opzione 2 = %2", "1" , "2" ) ; // Parametro 1= 1, Parametro 2 = 2

Funzioni di conversione delle stringhe:

Un leone(<Строка>, <ЧислоСимволов>) restituisce i primi caratteri della stringa.

Destra(<Строка>, <ЧислоСимволов>) - restituisce gli ultimi caratteri della stringa.

Mercoledì(<Строка>, <НачальныйНомер>, <ЧислоСимволов>) - restituisce una stringa di lunghezza<ЧислоСимволов>, iniziando con un simbolo<НачальныйНомер>.

Abbr(<Строка>) tronca i caratteri non significativi a sinistra del primo carattere significativo nella stringa.

abbr(<Строка>) - taglia i caratteri non significativi a destra dell'ultimo carattere significativo nella stringa.

Abbrl(<Строка>) - taglia i caratteri non significativi a sinistra del primo carattere significativo della stringa ea destra dell'ultimo carattere significativo della stringa.

StrGetString(<Строка>, <НомерСтроки>) – ottiene la stringa di una stringa multilinea per numero.

Altre caratteristiche:

StrLength(<Строка>) - restituisce il numero di caratteri in una stringa.

StrNumero di righe(<Строка>) - restituisce il numero di righe in una stringa multilinea. Una riga è considerata nuova se è separata dalla riga precedente da un carattere di nuova riga.

StrCompare(<Строка1>, <Строка2> ) - confronta due stringhe senza distinzione tra maiuscole e minuscole. La funzione funziona come un oggetto Confronto di valori. Ritorna:

  • 1 - se la prima riga è maggiore della seconda
  • -1 - se la seconda riga è maggiore della prima
  • 0 - se le stringhe sono uguali

StrCompare("Prima riga" , "Seconda riga" ); // uno

Esistono pochi meccanismi per lavorare con le stringhe nelle query 1C. Innanzitutto, è possibile aggiungere stringhe. In secondo luogo, una sottostringa può essere presa da una stringa. In terzo luogo, le stringhe possono essere confrontate, anche in base al modello. Questo è tutto ciò che puoi fare con le stringhe.

Aggiunta di stringhe

L'operatore "+" viene utilizzato per aggiungere stringhe in una query. Puoi aggiungere solo stringhe di lunghezza limitata.

SELEZIONA "Nome: " + Contractors.Name AS Column1 FROM Directory.Contractors AS Contractors WHERE Contractors.Reference = &Reference

Funzione di sottostringa

SOTTOSTRINGA(<Строка>, <НачальнаяПозиция>, <Длина>)

Un analogo della funzione Environment() del modello a oggetti. La funzione Substring() può essere applicata a dati di tipo stringa e consente di selezionare un frammento <Строки> , iniziando con un carattere numerico <НачальнаяПозиция> (i caratteri di una stringa sono numerati da 1) e la lunghezza <Длина> personaggi. Il risultato della valutazione della funzione ha un tipo stringa di lunghezza variabile e la lunghezza sarà considerata illimitata se <Строка> ha lunghezza e parametro illimitati <Длина> non è una costante o maggiore di 1024.

Se la lunghezza della stringa è inferiore a quella specificata nel secondo parametro, la funzione restituirà una stringa vuota.

Attenzione! Non è consigliabile utilizzare la funzione SUBSTRING() per convertire stringhe di lunghezza illimitata in stringhe di lunghezza limitata. Invece, è meglio usare l'operatore di cast EXPRESS().

Funzione simile

Se dobbiamo assicurarci che l'attributo string soddisfi determinati criteri, lo confrontiamo:

SELECT Counterparties.Name AS Column1 FROM Directory.Counterparties AS Controparti WHERE Counterparties.Name = "Gazprom"

Ma cosa succede se è necessario un confronto più sottile? Non solo per uguaglianza o disuguaglianza, ma per somiglianza con un certo schema? Questo è esattamente ciò per cui è stata creata la funzione LIKE.

LIKE - Un operatore per verificare se una stringa è simile a un pattern. Analogo di LIKE in SQL.

L'operatore LIKE consente di confrontare il valore dell'espressione specificata a sinistra di essa con la stringa del modello specificata a destra. Il valore dell'espressione deve essere di tipo string. Se il valore dell'espressione corrisponde al modello, il risultato dell'operatore sarà TRUE, altrimenti sarà FALSE.

I seguenti caratteri nella stringa del modello sono caratteri di servizio e hanno un significato diverso dal carattere della stringa:

  • % (percentuale): una sequenza contenente un numero qualsiasi di caratteri arbitrari;
  • _ (sottolineatura): un carattere arbitrario;
  • […] (uno o più caratteri tra parentesi quadre): qualsiasi singolo carattere riportato tra parentesi quadre. Un'enumerazione può contenere intervalli, come a-z, che significa qualsiasi carattere all'interno dell'intervallo, comprese le estremità dell'intervallo;
  • [^…] (tra parentesi quadre un segno di negazione seguito da uno o più caratteri): Qualsiasi singolo carattere diverso da quelli elencati dopo il segno di negazione.

Qualsiasi altro simbolo significa di per sé e non comporta alcun carico aggiuntivo. Se è necessario scrivere uno dei caratteri elencati come se stesso, deve essere preceduto da<Спецсимвол>. Me stessa<Спецсимвол>(qualsiasi carattere adatto) è definito nella stessa istruzione dopo la parola chiave SPECIAL CHARACTER.

Le stringhe in 1C 8.3 nel linguaggio integrato 1c sono valori di tipo primitivo Linea. I valori di questo tipo contengono una stringa Unicode di lunghezza arbitraria. Le variabili di tipo stringa sono un insieme di caratteri racchiusi tra virgolette.

Esempio 1. Creiamo una variabile stringa con testo.

StringVariable = "Ciao mondo!";

Funzioni per lavorare con le stringhe in 1s 8.3

In questa sezione verranno fornite le principali funzioni che consentono di modificare le righe in 1s o di analizzare le informazioni in esse contenute.

StrLength

StrLength(<Строка>) . Restituisce il numero di caratteri contenuti nella stringa passata nel parametro.

Esempio 2. Contiamo il numero di caratteri nella stringa "Hello world!".

String = "Ciao mondo!"; Numero di caratteri = StrLength(Stringa); Rapporto(Numero di caratteri);

Il risultato dell'esecuzione di questo codice visualizzerà il numero di caratteri nella stringa: 11.

Abbreviato

Abbr(<Строка>) . Taglia i caratteri non significativi a sinistra del primo carattere significativo in una stringa.
Personaggi insignificanti:

  • spazio;
  • spazio unificatore;
  • tabulazione;
  • ritorno in carrozza;
  • traduzione di riga;
  • traduzione del modulo (pagina).

Esempio 3. Rimuovere tutti gli spazi dal lato sinistro della stringa "pace!" e aggiungi la stringa "Hello".

Stringa = abbr("mondo!"); Stringa = "Ciao"+Stringa; Notifica(Stringa);

Il risultato dell'esecuzione di questo codice sarà la visualizzazione della stringa "Hello world!".

Abbreviazione

abbr(<Строка>) . Taglia i caratteri non significativi a destra del primo carattere significativo in una stringa.

Esempio 4. Modulo dalle stringhe "Hello" e "world!" frase "Ciao mondo!"

Stringa = abbr("Ciao")+" "+abbr("mondo!"); Notifica(Stringa);

LP abbreviato

Abbrl(<Строка>) . Taglia i caratteri non significativi a destra del primo carattere significativo nella stringa, taglia anche i caratteri non significativi a sinistra del primo carattere significativo nella stringa. Questa funzione viene utilizzata più spesso delle due precedenti, in quanto è più versatile.

Esempio 5. Rimuovere i caratteri insignificanti a sinistra ea destra nel nome della controparte.

Appaltatore = Directories.Contractors.FindBy Details("TIN", "0777121211"); ContractorObject = Contractor.GetObject(); ContractorObject.Description = LP abbreviato(ContractorObject.Description); ContractorObject.Write();

un leone

Un leone(<Строка>, <ЧислоСимволов>) . Ottiene i primi caratteri di una stringa, il numero di caratteri è specificato nel parametro Numero di caratteri.

Esempio 6. Passiamo alla struttura Dipendente contenere il nome, cognome e patronimico del dipendente. Ottieni una stringa con cognome e iniziali.

NomeIniziale = Leone(Dipendente.Nome, 1); Iniziale patronimico = Leone(Dipendente.Patronimico, 1); NomeCompleto = Impiegato.Cognome + " " + Nome Iniziale + "." + Iniziale patronimica + ".";

Diritti

Destra(<Строка>, <ЧислоСимволов>) . Ottiene gli ultimi caratteri di una stringa, il numero di caratteri è specificato nel parametro Numero di caratteri. Se il numero di caratteri specificato supera la lunghezza della stringa, viene restituita l'intera stringa.

Esempio 7. Scrivi la data nel formato "aaammgg" alla fine della variabile stringa, prendi la stringa con la data e convertila nel tipo data di.

Stringa = "Data attuale: 20170910"; StringData = Diritti (Stringa, 8); Data = Data(StringDate);

Mercoledì

Mercoledì(<Строка>, <НачальныйНомер>, <ЧислоСимволов>) . Ottiene una sottostringa dalla stringa passata nel parametro Linea, a partire dal carattere il cui numero è specificato nel parametro Numero Iniziale e la lunghezza passata al parametro Numero di caratteri. La numerazione dei caratteri in una stringa parte da 1. Se il parametro Numero Iniziale viene specificato un valore minore o uguale a zero, il parametro assume il valore 1. Se il parametro Numero di caratteri non è specificato, vengono selezionati i caratteri fino alla fine della stringa.

Esempio 8. Lascia che la variabile stringa contenga il codice della regione a partire dalla nona posizione, dovresti ottenerlo e scriverlo in una riga separata.

String = "Regione: 99 Mosca"; Regione = Media(Riga, 9, 2);

Trova pagina

StrTrova(<Строка>, <ПодстрокаПоиска>, <НаправлениеПоиска>, <НачальнаяПозиция>, <НомерВхождения>) . Cerca la sottostringa specificata in una stringa, restituisce il numero di posizione del primo carattere della sottostringa trovata. Considera i parametri di questa funzione:

  • Linea. Stringa di origine;
  • SottostringaCerca. La sottostringa desiderata;
  • Ricerca di direzione. Specifica la direzione in cui cercare una sottostringa in una stringa. Può assumere valori:
    • Cerca Direzione.Dall'inizio;
    • Cerca Direzione.Dalla fine;
  • Posizione di partenza. Specifica la posizione nella stringa da cui iniziare la ricerca;
  • Numero di ingresso. Specifica il numero di occorrenze della sottostringa cercata nella stringa di origine.

Esempio 9. Nella riga "Hello world!" determinare la posizione dell'ultima occorrenza del carattere "e".

PositionNumber = StrFind("Hello World!", "and", SearchDirection.From End); Notifica(NumeroPosizione);

Il risultato dell'esecuzione di questo codice sarà la visualizzazione del numero dell'ultima occorrenza del simbolo "e" sullo schermo: 9.

VReg

VReg(<Строка>) . Converte tutti i caratteri della stringa specificata in 1s 8 in maiuscolo.

Esempio 10. Converti la stringa "hello world!" in maiuscolo.

StringVreg = Vreg("ciao mondo!"); Report(StringVreg);

Il risultato dell'esecuzione di questo codice sarà la visualizzazione della stringa "HELLO WORLD!"

HReg

HReg(<Строка>) . Converte tutti i caratteri della stringa specificata in 1s 8 in minuscolo.

Esempio 11. Converti la stringa "HELLO WORLD!" in minuscolo.

StringNreg = NReg("CIAO MONDO!"); Report(StringVreg);

Il risultato dell'esecuzione di questo codice sarà la visualizzazione della stringa "hello world!"

TReg

TReg(<Строка>) . Converte una stringa come segue: il primo carattere di ogni parola viene convertito in maiuscolo, i restanti caratteri della parola vengono convertiti in minuscolo.

Esempio 12. Metti in maiuscolo le prime lettere delle parole nella stringa "hello world!".

StringTreg = TReg("ciao mondo!"); Report(StringTreg);

Il risultato dell'esecuzione di questo codice sarà la visualizzazione della stringa "Hello World!"

Simbolo

Simbolo(<КодСимвола>) . Ottiene un carattere in base al relativo codice Unicode.

Esempio 13. Aggiungi sinistra e destra alla riga "Hello World!" simbolo ★

StringWithStars = Carattere("9733")+"Hello World!"+Carattere("9733"); Report(StringWithStars);

Il risultato dell'esecuzione di questo codice sarà la visualizzazione della stringa "★Hello World!★"

CodiceSimbolo

CodiceSimbolo(<Строка>, <НомерСимвола>) . Ottiene il codice del carattere Unicode dalla stringa specificata nel primo parametro, situata nella posizione specificata nel secondo parametro.

Esempio 14. Scopri il codice dell'ultimo carattere nella stringa "Hello World!".

String = "Ciao mondo!"; CodiceCarattere =CodiceCarattere(Stringa, LunghezzaStringa(Stringa)); Notifica(CodiceCarattere);

Il risultato dell'esecuzione di questo codice sarà la visualizzazione del codice del simbolo "!" — 33.

Riga vuota

Riga vuota(<Строка>) . Verifica se la stringa è composta solo da caratteri non significativi, ovvero se è vuota.

Esempio 15. Verifica se la stringa è vuota e consiste di tre spazi.

Vuoto = Stringa Vuota(" "); Rapporto (vuoto);

Il risultato dell'esecuzione di questo codice sarà la visualizzazione della parola "Sì" (espressione stringa di un valore booleano Vero).

StrSostituisci

StrSostituisci(<Строка>, <ПодстрокаПоиска>, <ПодстрокаЗамены>) . Trova tutte le occorrenze della sottostringa di ricerca nella stringa di origine e la sostituisce con la sottostringa di sostituzione.

Esempio 16. Nella riga "Hello World!" sostituire la parola "Mondo" con la parola "Amici".

String = StrReplace("Ciao Mondo!", "Mondo", "Amici"); Notifica(Stringa);

Il risultato dell'esecuzione di questo codice sarà la visualizzazione della stringa "Hello Friends!"

StrNumberRows

StrNumero di righe(<Строка>) . Consente di contare il numero di righe in una stringa multilinea. Per passare a una nuova riga in 1s 8, viene utilizzato il simbolo PS(carattere di avanzamento riga).

Esempio 17. Determina il numero di righe nel testo:
"Prima linea
Seconda linea
Terza riga"

Number = StrNumber of Lines("Prima riga"+Symbols.PS +"Seconda riga"+Symbols.PS +"Terza riga"); Rapporto(Numero);

Il risultato dell'esecuzione di questo codice sarà la visualizzazione del numero di righe nel testo: 3

StrGetString

StrGetString(<Строка>, <НомерСтроки>) . Ottiene una stringa in una stringa multilinea in base al suo numero. La numerazione delle righe inizia da 1.

Esempio 18. Ottieni l'ultima riga nel testo:
"Prima linea
Seconda linea
Terza riga"

Testo = "Prima riga"+Caratteri.PS +"Seconda riga"+Caratteri.PS +"Terza riga"; LastLine = StrGetLine (testo, numero di righe (testo)); Notifica (ultima riga);

Il risultato dell'esecuzione di questo codice sarà la visualizzazione della riga "Terza riga".

StrNumberOccurrences

StrNumberOccurrences(<Строка>, <ПодстрокаПоиска>) . Restituisce il numero di occorrenze della sottostringa specificata in una stringa. La funzione fa distinzione tra maiuscole e minuscole.

Esempio 19. Determina quante volte la lettera "c" entra nella riga "Righe in 1s 8.3 e 8.2", indipendentemente dal suo caso.

String = "Linee in 1s 8.3 e 8.2"; Numero di occorrenze = StrNumero di occorrenze(Vreg(String), "C"); rapporto (numero di occorrenze);

Il risultato dell'esecuzione di questo codice mostrerà il numero di occorrenze sullo schermo: 2.

La pagina inizia da

StrBeginsFrom(<Строка>, <СтрокаПоиска>) . Verifica se la stringa data nel primo parametro inizia con la stringa nel secondo parametro.

Esempio 20. Determinare se il TIN della controparte selezionata inizia con il numero 1. Sia la variabile controparte Controparti.

TIN = CIF contraente; StartsCUnits = StrStartsC(TIN, "1"); If StartsFROM1 Then //Il tuo codice EndIf;

La pagina finisce il

StrEndsOn(<Строка>, <СтрокаПоиска>) . Verifica se la stringa passata nel primo parametro termina con la stringa nel secondo parametro.

Esempio 21. Determinare se il TIN della controparte selezionata termina con il numero 2. Sia la variabile controparte il collegamento all'elemento della directory viene memorizzato Controparti.

TIN = CIF contraente; Termina con due = Str finisce con (TIN, "2"); Se finisce con due allora //Il tuo codice EndIf;

Dividi pagina

StrDivide(<Строка>, <Разделитель>, <ВключатьПустые>) . Divide una stringa in parti in base ai caratteri delimitatori specificati e scrive le stringhe risultanti in una matrice. Il primo parametro memorizza la stringa originale, il secondo parametro contiene la stringa contenente il delimitatore, il terzo parametro indica se le stringhe vuote devono essere scritte nell'array (per impostazione predefinita Vero).

Esempio 22. Supponiamo di avere una stringa contenente numeri separati dal simbolo ";", ottenere un array di numeri dalla stringa.

Stringa = "1; 2; 3"; Matrice = StrSplit(Stringa, ";"); For Count = 0 per Array.Quantity() - 1 tentativo di loop Array[Count] = Number(Ablp(Array[Count])); Eccezione Array[W] = 0; EndProva EndCycle;

Come risultato dell'esecuzione, si otterrà un array con numeri da 1 a 3.

StrConnect

StrConnect(<Строки>, <Разделитель>) . Converte una matrice di stringhe dal primo parametro in una stringa contenente tutti gli elementi della matrice utilizzando il delimitatore specificato nel secondo parametro.

Esempio 23. Utilizzando l'array di numeri dell'esempio precedente, ottenere la stringa originale.

For Count = 0 per Array.Quantity() - 1 Loop Array[Count] = String(Array[Count]); ciclo finale; Stringa = StrConnect(Array, "; ");

Articoli correlati in alto