Français
Source/ Codesnippets

Memposabs Substrcount

 

Michael
Wodrich
là je cet beiden ständig nutze, mets je vous la fois ici hinein.

MemPosAbs
là MemPos() seulement qui Position de qui Startposition à gerechnet zurückgibt, habe je MemPosAbs geschrieben. ici wird qui absolute Position dedans des Bereiches retour.
comment on à SubStrCount() voyons peux simplifier sich ensuite Suchfolgen.

SubStrCount
là Substr() aussi mittendrin Leerstrings zurückgeben et cela Trennzeichen aus einem String bestehen peux ist cela Zählen qui Worte pas entier so simple.
und dir zwar aussi anders mais j'ai une Bereich pour cela Zählen benutzt.

ici qui Funktionen avec getestetem Beispiel:
KompilierenMarqueSéparation
!
MemPosAbs + SubStrCount
by Michael Wodrich
erstellt mit XProfan 9.x

Proc MemPosAbs    liefert die absolute Adresse (vom Beginn der Bereichsvariablen)

    Parameters Bereich#, Start&, Finde$
    Declare gefunden&
    gefunden& = MemPos( Bereich#, Start&, Finde$ )
    Return If( gefunden& <> (-1), Start& + gefunden&, (-1) )

EndProc

Proc SubStrCount    als Ergänzung zu SubStr$( Wortliste$, n&, Trennzeichen$ ); liefert Anzahl

    Parameters Wortliste$, Trennzeichen$
    Declare Bereich#, Position&, Anzahl&, sovieleTrennzeichen&
    Dim Bereich#, Len( Wortliste$ )
    Char Bereich#, 0 = Wortliste$
    sovieleTrennzeichen& = Len( Trennzeichen$ )
    Position& = MemPos( Bereich#, Position&, Trennzeichen$ )

    While Position& <> (-1)

        Inc Anzahl&
        Position& = MemPosAbs( Bereich#, Position& + sovieleTrennzeichen&, Trennzeichen$ )

    EndWhile

    Dispose Bereich#
    Return Anzahl& + 1

EndProc

Hauptprogramm
Declare oldDeci%, A$
oldDeci% = Set("Decimals", 0 )
Print "Teste SubStr$() und SubStrCount():
"
A$ = "eins,zwei,,vier,fünf,sechs,sieben"
Print "<" + A$ + "> + Trenner <,> = " + Str$( SubStrCount( A$, "," ) )

WhileLoop 8

    Print Str$( &loop ) + ": <" + SubStr$( A$, &loop, "," ) + ">"

EndWhile

Print ""
A$ = "eins, zwei,,vier, fünf, sechs, sieben,"
Print "<" + A$ + "> + Trenner <, > = " + Str$( SubStrCount( A$, ", " ) )

WhileLoop 8

    Print Str$( &loop ) + ": <" + SubStr$( A$, &loop, ", " ) + ">"

EndWhile

Print ""
A$ = "eins, zwei, , vier, fünf, sechs, sieben, "
Print "<" + A$ + "> + Trenner <, > = " + Str$( SubStrCount( A$, ", " ) )

WhileLoop 8

    Print Str$( &loop ) + ": <" + SubStr$( A$, &loop, ", " ) + ">"

EndWhile

Set("Decimals", oldDeci% )
WaitInput<
class=s4 href='./../../function-references/XProfan/end/'>Fin

belle Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
28.04.2006  
 



Zum Quelltext


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

1.588 Views

Untitledvor 0 min.
H.Brill14.06.2023
Sven Bader24.05.2023
Walter11.04.2023
RudiB.02.09.2022

Themeninformationen

cet Thema hat 1 participant:

Michael Wodrich (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie