Balaie la chaîne en entrée, en commençant à offset, pour rechercher des symboles et renvoie chaque segment comme chaîne du symbole.


icon

Entrées/Sorties

  • cbool.png autoriser les symboles vides ? (F)

    autoriser les symboles vides ? détermine si la fonction reconnaît ou non un symbole lorsqu'elle rencontre de multiples séparateurs adjacents.

    Si autoriser les symboles vides ? est FAUX (valeur par défaut), les séparateurs multiples adjacents peuvent séparer deux symboles dans chaîne en entrée. Si autoriser les symboles vides ? est VRAI, une chaîne du symbole vide est renvoyée entre chaque paire de séparateurs adjacents.
  • cstr.png chaîne en entrée

    chaîne en entrée est la chaîne en entrée à scanner.

  • ci32.png offset

    offset est le point de chaîne en entrée indiquant le début du balayage.

    La valeur par défaut vaut 0, correspondant au début de la chaîne.
  • c1dstr.png opérateurs (aucun)

    opérateurs est un tableau de chaînes que la fonction identifie comme symboles lorsqu'elles apparaissent dans la chaîne en entrée et ce, même si elles ne sont pas entourées de séparateurs.

    Si une portion de chaîne en entrée correspond à plus d'un opérateur défini, la fonction sélectionne la plus longue correspondance comme symbole. Par exemple, si >, = et >= sont définis comme opérateurs, la chaîne en entrée 4>=0 produit >= comme chaîne de symbole suivante avec un offset de 1.

    Une chaîne contenue dans opérateurs peut contenir les codes de format spéciaux suivants, qui peuvent être utilisés pour balayer des nombres en les considérant dans leur totalité comme des symboles uniques.

    %dcorrespondance à un entier décimal
    %ocorrespondance à un entier octal
    %xcorrespondance à un entier hexadécimal
    %bcorrespondance à un entier binaire
    %e,%f,%gcorrespondance à un nombre à virgule flottante ou à un nombre réel scientifique
    %%correspondance à un seul caractère %
    Remarque Si les chaînes + ou – sont définies comme opérateurs, la fonction ne reconnaît pas les signes + et – en tête, ou unaires. Cette fonction les renvoie toujours comme symboles distincts. Ceci constitue une exception à la règle de la "correspondance la plus longue".
  • c1dstr.png séparateurs (\s,\t,\r,\n)

    séparateurs est un tableau de chaînes qui servent de séparateurs entre les symboles.

    Les chaînes contenues dans séparateurs ne sont pas renvoyées en tant que symboles, mais servent simplement à séparer les symboles adjacents. Les séparateurs par défaut sont les caractères espaces vierges : caractère de tabulation, retour à la ligne et retour chariot.

  • cbool.png utiliser des données d'opér./sépar. de la mémoire cache ? (F)

    utiliser des données d'opér./sépar. de la mémoire cache ? est une entrée facultative avancée. Même si ce paramètre est non câblé, chaîne du symbole se comporte correctement.

    Cependant, vous pouvez utiliser le paramètre utiliser des données d'opér./sépar. de la mémoire cache ? pour améliorer considérablement les performances d'analyse de la chaîne. Définissez utiliser des données d'opér./sépar. de la mémoire cache ? à FAUX lors de la première exécution de la chaîne du symbole et à VRAI pour chacune des exécutions suivantes, à condition que les opérateurs et les séparateurs n'aient pas changé. Utilisez un registre à décalage avec une constante FAUX en entrée et une constante VRAI en sortie pour vous assurer du bon fonctionnement si les opérateurs et séparateurs ne changent pas au cours de l'exécution de la boucle. Si utiliser des données d'opér./sépar. de la mémoire cache ? est FAUX et que opérateurs ou séparateurs a changé depuis la dernière exécution, une sortie incorrecte peut en résulter. Si opérateurs et séparateurs sont non câblés ou sont câblés à des constantes du diagramme, vous pouvez laisser utiliser des données d'opér./sépar. de la mémoire cache ? non câblé et obtenir néanmoins des performances optimales.

  • istr.png chaîne en sortie

    chaîne en sortie renvoie la chaîne en entrée non modifiée.

  • ii32.png offset après le symbole

    offset après le symbole identifie le point de la chaîne en entrée immédiatement après le symbole qui a été trouvé en dernier lieu et tout séparateur de fin.

    Tout balayage ultérieur de la même chaîne en entrée doit commencer au niveau de cet offset. Si offset est inférieur à 0 ou supérieur au nombre de caractères dans la chaîne en entrée, ou si la fin de la chaîne a été atteinte, offset après le symbole est égal à –1.

  • istr.png chaîne du symbole

    chaîne du symbole est le symbole correspondant. Il peut s'agir d'une des chaînes situées dans opérateurs ou de n'importe quelle chaîne de texte dans chaîne en entrée qui apparaît entre séparateurs.

  • ii32.png indice du symbole

    indice du symbole est l'indice de la chaîne du symbole dans opérateurs, si chaîne du symbole correspond à un des éléments d'opérateurs.

    Si chaîne du symbole est une quelconque autre chaîne, indice du symbole renvoie –1. Si la fonction atteint la fin de chaîne en entrée sans trouver d'opérateur valide, indice du symbole renvoie –2.
  • Les symboles sont des segments de texte qui représentent en général des mots-clés individuels, des valeurs numériques ou des opérateurs trouvés en analysant un fichier de configuration ou un autre format de données textuelles. Vous pouvez spécifier les symboles avec les données que vous passez à la fonction par l'intermédiaire des entrées séparateurs et opérateurs. Par exemple, comme le caractère espace est un séparateur par défaut, chaque mot de Ceci est une chaîne est un symbole et vous pouvez analyser la phrase au niveau de chaque mot de cette chaîne.

    Utilisez cette fonction dans une boucle While qui traite une section de chaîne à la fois jusqu'à ce que l'indice du symbole renvoie –2 (ce qui indique la fin de la chaîne). Vous pouvez transmettre offset après le symbole à offset par le biais d'un registre à décalage, pour que chaque balayage commence là où le précédent s'est arrêté.

    Par défaut, cette fonction identifie et renvoie un symbole lorsqu'elle rencontre un espace, une tabulation, un retour chariot ou un retour à la ligne. Vous pouvez analyser une chaîne en utilisant un de ces séparateurs ou tout autre de votre choix, ou en définissant des opérateurs.

    Par exemple, supposons que vous câbliez les valeurs suivantes à la fonction.

    EntréeValeur
    chaîne en entréeThis is a testLabVIEWstring
    offset0 (valeur par défaut)
    opérateurs[NI,qsdf,LabVIEW]
    séparateurs\s,\t,\r,\n (valeur par défaut)

    Si vous placez la fonction dans une boucle While comme décrit ci-dessus, la fonction renvoie les valeurs suivantes :

    Première itération

    chaîne en sortieThis is a testLabVIEWstring
    offset après le symbole5
    chaîne du symboleThis
    indice du symbole–1 (pas un opérateur)

    Deuxième itération

    chaîne en sortieThis is a testLabVIEWstring
    offset après le symbole8
    chaîne du symboleis
    indice du symbole–1 (pas un opérateur)

    Troisième itération

    chaîne en sortieThis is a testLabVIEWstring
    offset après le symbole10
    chaîne du symbolea
    indice du symbole–1 (pas un opérateur)

    Quatrième itération

    chaîne en sortieThis is a testLabVIEWstring
    offset après le symbole14
    chaîne du symboletest
    indice du symbole–1 (pas un opérateur)

    Cinquième itération

    chaîne en sortieThis is a testLabVIEWstring
    offset après le symbole21
    chaîne du symboleLabVIEW
    indice du symbole2 (deuxième élément d'opérateurs)

    Sixième itération

    chaîne en sortieThis is a testLabVIEWstring
    offset après le symbole–1 (plus aucun symbole présent)
    chaîne du symbolestring
    indice du symbole–1 (pas un opérateur)

    Septième itération

    chaîne en sortieThis is a testLabVIEWstring
    offset après le symbole–1 (plus aucun symbole présent)
    chaîne du symbole(fin de chaîne)
    indice du symbole–2 (fin de chaîne)