Nuove funzioni per lavorare con le stringhe. Rimuovi nuove funzioni per lavorare con le stringhe 1c dalla stringa

Una stringa è uno dei tipi di dati primitivi nei sistemi 1C:Enterprise 8 Variabili con il tipo linea contenere testo.

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

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

Infine Per3 significherà " Parola 1 Parola 2″.

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

InvioStringa(<Строка>, <Подсказка>, <Длина>, <Многострочность>) — 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 immessa. Parametro <Подсказка> facoltativo: questo è il titolo della finestra di dialogo. Parametro <Длина> facoltativo, mostra la lunghezza massima della stringa di input. Il valore predefinito è zero, il che significa lunghezza illimitata. Parametro <Многострочность> opzionale. Definisce la modalità di immissione del testo su più righe: Vero: immissione di testo su più righe con separatori di riga; Falso: inserisci una stringa semplice.

Puoi inserire una stringa se conosci il codice carattere in Unicode:

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

Lettera= Simbolo(1103) ; // IO

Esiste anche una funzione inversa che permette di scoprire il codice di un simbolo.

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

Funzioni di conversione maiuscole/minuscole del testo:

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

NReg(<Строка>) — Converte tutti i caratteri di una stringa in minuscolo.

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

Funzioni per cercare e sostituire i caratteri in una stringa:

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

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

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

Numero4 occorrenze = Str Trova ( "Difensiva", "informazioni su", direzione della ricerca. Dall'inizio, 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 ("String" , "oka" , "" ) ; // 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.

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

StrNumberOccorrenze ( "Studia, studia e studia ancora", "studio" , "" ) ; // 3

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

ModelloStr ( "Parametro 1 = %1, Parametro 2 = %2", "1" , "2" ) ; // Parametro 1= 1, Parametro 2 = 2

Funzioni di conversione delle stringhe:

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

Giusto(<Строка>, <ЧислоСимволов>) – restituisce gli ultimi caratteri di una stringa.

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

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

Abbr(<Строка>) — taglia i caratteri non significativi a destra dell'ultimo carattere significativo della riga.

AbbrLP(<Строка>) – taglia i caratteri non significativi a sinistra del primo carattere significativo della riga e a destra dell'ultimo carattere significativo della riga.

StrGetString(<Строка>, <НомерСтроки>) – Ottiene una stringa multilinea in base al numero.

Altre caratteristiche:

ForzaLunghezza(<Строка>) – restituisce il numero di caratteri nella stringa.

StrNumeroRiga(<Строка>) – restituisce il numero di righe in una stringa su più righe. Una riga è considerata nuova se è separata dalla precedente da un carattere di fine riga.

StrConfront(<Строка1>, <Строка2> ) – confronta due stringhe senza distinzione tra maiuscole e minuscole. Una funzione funziona in modo simile a 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"); // 1

Implementato nella versione 8.3.6.1977.

Abbiamo ampliato l'insieme di funzioni progettate per funzionare con le stringhe. Lo abbiamo fatto per offrirti strumenti più avanzati per l'analisi dei dati delle stringhe. Le nuove funzioni saranno comode e utili nei compiti tecnologici di analisi del testo. Nelle attività relative all'analisi del testo che contiene dati in formato formattato. Potrebbe trattarsi dell'analisi di alcuni file ricevuti dall'apparecchiatura o, ad esempio, dell'analisi di un registro tecnologico.

Potresti eseguire tutte le azioni che eseguono nuove funzioni prima. Utilizzando algoritmi più o meno complessi scritti in un linguaggio integrato. Pertanto, le nuove funzioni non forniscono funzionalità fondamentalmente nuove. Tuttavia, consentono di ridurre la quantità di codice e 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 in un linguaggio integrato.

Funzione di formattazione StrTemplate()

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

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

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

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

Per indicare un punto specifico nel modello in cui desideri eseguire la sostituzione, devi utilizzare marcatori come %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 dati sulla riga 2 (tipo di data richiesto)

Funzione per lavorare con le stringhe StrCompare()

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

Potresti eseguire la stessa azione in precedenza utilizzando l'oggetto Value Comparison:

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

Funzioni per lavorare con le stringhe StrStartsWith(), StrEndsAt()

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

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

Funzioni per lavorare con le stringhe StrDivide(), StrConnect()

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

Funzione per lavorare con le stringhe StrFind()

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

  • Cerca in diverse direzioni (dall'inizio, dalla fine);
  • Cerca da una posizione specificata;
  • Cerca un'occorrenza con un numero specificato (seconda, terza, 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 Trova().

Di seguito è riportato un esempio che utilizza le nuove funzionalità di ricerca. La ricerca inversa è utile quando è necessaria l'ultima parte di una stringa formalizzata, ad esempio il nome file completo in un URL. E la ricerca da una posizione specifica aiuta nei casi in cui è necessario cercare in un frammento noto e non nell'intera riga.

Appunti da Attraverso lo specchio

18/08/2014 Nuove funzioni per lavorare con le stringhe

Implementato nella versione 8.3.6.1977.

Abbiamo ampliato l'insieme di funzioni progettate per funzionare con le stringhe. Lo abbiamo fatto per offrirti strumenti più avanzati per l'analisi dei dati delle stringhe. Le nuove funzioni saranno comode e utili nei compiti tecnologici di analisi del testo. Nelle attività relative all'analisi del testo che contiene dati in formato formattato. Potrebbe trattarsi dell'analisi di alcuni file ricevuti dall'apparecchiatura o, ad esempio, dell'analisi di un registro tecnologico.

Potresti eseguire tutte le azioni che eseguono nuove funzioni prima. Utilizzando algoritmi più o meno complessi scritti in un linguaggio integrato. Pertanto, le nuove funzioni non forniscono funzionalità fondamentalmente nuove. Tuttavia, consentono di ridurre la quantità di codice e 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 in un linguaggio integrato.

Funzione di formattazione StrTemplate()

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

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

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

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

Per indicare un punto specifico nel modello in cui desideri eseguire la sostituzione, devi utilizzare marcatori come %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 dati sulla riga 2 (tipo di data richiesto)

Funzione per lavorare con le stringhe StrCompare()

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

Potresti eseguire la stessa azione in precedenza utilizzando l'oggetto Confronto di valori:

Tuttavia, l’utilizzo della nuova funzionalità sembra più semplice. E oltre a questo, una funzione, in contrapposizione ad un oggetto Confronto di valori, funziona sia nel thin client che nel client web.

Funzioni per lavorare con le stringhe StrStartsWith(), StrEndsAt()

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

Ad esempio, è conveniente utilizzarli nell'operatore Se:

Funzioni per lavorare con le stringhe StrDivide(), StrConnect()

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

Funzione per lavorare con le stringhe StrFind()

Invece della vecchia funzione Trovare() Abbiamo implementato una nuova funzione che ha funzionalità aggiuntive:

  • Cerca in diverse direzioni (dall'inizio, dalla fine);
  • Cerca da una posizione specificata;
  • Cerca un'occorrenza con un numero specificato (seconda, terza, ecc.).

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

Di seguito è riportato un esempio che utilizza le nuove funzionalità di ricerca. La ricerca inversa è utile quando è necessaria l'ultima parte di una stringa formalizzata, ad esempio il nome file completo in un URL. E la ricerca da una posizione specifica aiuta nei casi in cui è necessario cercare in un frammento noto e non nell'intera riga.

Le righe in 1C 8.3 nel linguaggio integrato 1C rappresentano 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 stringhe in 1s 8.3

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

StrLength

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

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

String = "Ciao mondo!"; NumerodiCaratteri = StrLength(String); Rapporto(NumeroCaratteri);

Il risultato dell'esecuzione di questo codice sarà la visualizzazione del numero di caratteri nella riga: 11.

AbbrL

AbbrL(<Строка>) . Taglia i caratteri non significativi a sinistra del primo carattere significativo nella stringa.
Personaggi secondari:

  • spazio;
  • spazio unificatore;
  • tabulazione;
  • ritorno a capo;
  • traslazione di linea;
  • traduzione del modulo (pagina).

Esempio 3. Rimuovi tutti gli spazi dal lato sinistro della riga "world!" e aggiungi la riga "Ciao".

String = Abbreviazione("mondo!"); Stringa = "Ciao"+Stringa; Rapporto(Stringa);

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

Abbreviato

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

Esempio 4. Forma dalle righe "Ciao" e "pace!" la frase "Ciao mondo!"

Linea = Abbreviazione("Ciao ")+" "+ Abbreviazione("mondo!"); Rapporto(Stringa);

AbbrLP

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

Esempio 5. Rimuovere i caratteri non significativi a sinistra e a destra nel nome della controparte.

Controparte = Directory.Controparti.Trova per dettagli("TIN", "0777121211"); AccountObject = Account.GetObject(); ControparteOggetto.Nome = AbbrLP(ControparteOggetto.Nome); AccountObject.Write();

un leone

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

Esempio 6. Lascia entrare la struttura Dipendente contenere il nome, il cognome e il patronimico del dipendente. Ottieni una stringa con cognome e iniziali.

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

Giusto

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

Esempio 7. Lascia che una data nel formato "aaaammgg" venga scritta alla fine di una variabile stringa, ottieni una stringa con la data e convertila nel tipo data.

String = "Data corrente: 20170910"; StringDate = Diritti(String, 8); Data = Data(StringDate);

Mercoledì

Mercoledì(<Строка>, <НачальныйНомер>, <ЧислоСимволов>) . Ottiene una sottostringa dalla stringa passata come parametro Linea, a partire dal carattere il cui numero è specificato nel parametro NumeroIniziale e la lunghezza passata nel parametro Numero di caratteri. La numerazione dei caratteri in una riga inizia da 1. Se nel parametro NumeroIniziale 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 riga.

Esempio 8. Lascia che la variabile stringa che inizia dalla nona posizione contenga il codice regionale, dovresti ottenerlo e scriverlo in una riga separata.

String = "Regione: 99 Mosca"; Regione = Avg(Stringa, 9, 2);

Pagina Trova

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

  • Linea. Stringa di origine;
  • Cerca sottostringa. Cerca sottostringa;
  • Direzione della ricerca. Specifica la direzione in cui cercare una sottostringa in una stringa. Può assumere valori:
    • Direzione della ricerca. Dall'inizio;
    • Direzione ricerca.Fine;
  • Posizione iniziale. Specifica la posizione nella stringa in cui inizia la ricerca;
  • NumeroOccorrenze. Specifica il numero di occorrenze della sottostringa cercata nella stringa di origine.

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

PositionNumber = StrFind("Ciao mondo!", "e", SearchDirection.End); Rapporto(NumeroPosizione);

Il risultato dell'esecuzione di questo codice sarà quello di visualizzare il numero dell'ultima occorrenza del simbolo "e": 9.

VReg

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

Esempio 10: Converti la stringa "ciao mondo!" al maiuscolo.

StringVreg = VReg("ciao mondo!"); Rapporto(StringVreg);

Il risultato dell’esecuzione di questo codice sarà la visualizzazione della riga “HELLO WORLD!”

NReg

NReg(<Строка>) . 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!"); Rapporto(StringVreg);

Il risultato dell'esecuzione di questo codice sarà la visualizzazione della riga "ciao mondo!"

Treg

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

Esempio 12: Scrivi in ​​maiuscolo le prime lettere delle parole nella riga "ciao mondo!"

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

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

Simbolo

Simbolo(<КодСимвола>) . Ottiene un carattere tramite il relativo codice Unicod.

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

StringWithStars = Simbolo("9733")+"Ciao Mondo!"+Simbolo("9733"); Rapporto(StringWithStars);

Il risultato dell'esecuzione di questo codice sarà la visualizzazione della riga “★Hello World!★”

Codice simbolo

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 riga "Hello World!"

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

Il risultato dell’esecuzione di questo codice sarà la visualizzazione del codice simbolo “!” - 33.

Riga vuota

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

Esempio 15. Controlla se una stringa composta da tre spazi è vuota.

Vuoto = StringaVuota(" "); Rapporto(Vuoto);

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

PaginaSostituisci

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 “Pace” con la parola “Amici”.

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

Il risultato dell'esecuzione di questo codice sarà la visualizzazione della riga "Ciao amici!"

StrNumeroLinee

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

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

Numero = StrNumeroString("Prima riga"+Caratteri.PS +"Seconda riga"+Simboli.PS +"Terza riga"); Rapporto(Numero);

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

StrGetString

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

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

Testo = "Prima riga" + Simboli PS + "Seconda riga" + Simboli PS + "Terza riga"; LastRow = StrGetRow(Testo, StrNumberLines(Testo)); Report(UltimaRiga);

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

PageNumberOccorrenze

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

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

Linea = "Linee in 1s 8.3 e 8.2"; NumberOccurrences = StrNumberOccurrences(Vreg(String), "C"); Rapporto(Numerooccorrenze);

Il risultato dell'esecuzione di questo codice sarà la visualizzazione del numero di occorrenze: 2.

La pagina inizia con

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

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

TIN = Controparte.TIN; StartsUNits = StrStartsWith(TIN, "1"); Se inizia con le unità Then //Il tuo codice EndIf;

FinepaginaOn

StrEndsWith(<Строка>, <СтрокаПоиска>) . Controlla 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. Inserire la variabile Controparte viene memorizzato un riferimento a un elemento della directory Controparti.

TIN = Controparte.TIN; TerminaConDue = StrFineCon(TIN, "2"); If EndsInTwo Then //Il tuo codice EndIf;

Pagina divisa

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

Esempio 22. Prendiamo una stringa contenente numeri separati dal simbolo “;”, otteniamo un array di numeri dalla stringa.

Stringa = "1; 2; 3"; Array = StrDivide(Stringa, ";"); Per Count = 0 Per Array.Quantity() - 1 tentativo di ciclo Array[Count] = Number(Abbr(Array[Count])); Matrice di eccezioni[Sch] = 0; EndAttemptsEndCycle;

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

PaginaConnetti

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

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

For Account = 0 By Array.Quantity() - 1 Ciclo Array[Act] = String(Array[Act]); FineCiclo; Riga = StrConnect(Array, "; ");

Pubblicazioni sull'argomento