Service ScriptForge.String

Le service String fournit une collection de m√©thodes pour le traitement des cha√ģnes. Ces m√©thodes peuvent √™tre utilis√©es pour :

Définitions

Sauts de ligne

Le service String reconna√ģt les sauts de ligne suivants¬†:

Nom symbolique

nombre ASCII

Saut de ligne
Tabulation verticale
Retour chariot
Retour chariot + saut de ligne
Séparateur de fichier
Séparateur de groupe
Séparateur d'enregistrement
Ligne suivante
Séparateur de ligne
Séparateur de paragraphe

10
12
13
13 + 10
28
29
30
133
8232
8233


Espaces

Le service String reconna√ģt les espaces suivants¬†:

Nom symbolique

Nombre ASCII

Espace
Tabulation horizontale
Saut de ligne
Tabulation verticale
Saut de page
Retour chariot
Ligne suivante
Espace insécable
Ligne séparateur
Séparateur de paragraphe

32
9
10
11
12
13
133
160
8232
8233


Séquences d'échappement

Vous trouverez ci-dessous une liste de s√©quences d'√©chappement pouvant √™tre utilis√©es dans des cha√ģnes.

Séquence d'échappement

Nom symbolique

Nombre ASCII

\n
\r
\t

Saut de ligne
Retour chariot
Onglet horizontal

10
13
9


tip

Pour que la s√©quence d'√©chappement "\n" soit interpr√©t√©e comme une cha√ģne r√©elle, utilisez simplement "\\n" au lieu de "\" & Chr(10).


Caractères non imprimables :

Les caractères définis dans la base de données de caractères Unicode comme "Autre" ou "Séparateur" sont considérés comme des caractères non imprimables.

Les caract√®res de contr√īle (code ASCII <= 0x1F) sont √©galement consid√©r√©s comme non imprimables.

Guillemets √† l'int√©rieur des cha√ģnes¬†:

Pour ajouter des guillemets dans les cha√ģnes, utilisez \' (guillemets simples) ou \" (guillemets doubles). Par exemple¬†:

Invocation du service

Avant de pouvoir utiliser le service ScriptForge.String, la bibliothèque ScriptForge doit être chargée en utilisant :

En Basic :

      GlobalScope.BasicLibraries.loadLibrary("ScriptForge")
  

Charger la bibliothèque créera l'objet SF_String qui peut être utilisé pour appeler les méthode dans le service String.

Les extraits de code suivants montrent les trois façons d'appeler des méthodes à partir du service String (la méthode Capitalize est utilisée à titre d'exemple) :


    Dim s as String : s = "abc def"
    s = SF_String.Capitalize(s) ' Abc Def
  

    Dim s as String : s = "abc def"
    Dim svc : svc = SF_String
    s = svc.Capitalize(s) ' Abc Def
  

    Dim s as String : s = "abc def"
    Dim svc : svc = CreateScriptService("String")
    s = svc.Capitalize(s) ' Abc Def
  
En Python

L'extrait de code ci-dessous illustre comment invoquer des méthodes à partir du service String dans des scripts Python. La méthode IsIPv4 est utilisée comme exemple.


    from scriptforge import CreateScriptService
    svc = CreateScriptService("String")
    ip_address = '192.168.0.14'
    svc.IsIPv4(ip_address) # True
  

Propriétés

L'objet SF_String fournit les propriétés suivantes pour les scripts Basic :

Nom

Lecture seule

Description

sfCR

Oui

Retour chariot : Chr(13)

sfCRLF

Oui

Retour chariot + saut de ligne : Chr(13) & Chr(10)

sfLF

Oui

Saut de ligne : Chr(10)

sfNEWLINE

Oui

Retour chariot + saut de ligne, qui peut être
1) Chr(13) & Chr(10) ou
2) saut de ligne : Chr(10)
selon le système d'exploitation.

sfTAB

Oui

Tabulation horizontale : Chr(9)


tip

Vous pouvez utiliser les propri√©t√©s ci-dessus pour identifier ou ins√©rer les caract√®res correspondants dans les cha√ģnes. Par exemple, le saut de ligne peut √™tre remplac√© par SF_String.sfLF.


Liste des méthodes dans le service String

Capitalize
Count
EndsWith
Escape
ExpandTabs
FilterNotPrintable
FindRegex
HashStr
HtmlEncode
IsADate
IsAlpha
IsAlphaNum
IsAscii
IsDigit
IsEmail

IsFileName
IsHexDigit
IsIBAN
IsIPv4
IsLike
IsLower
IsPrintable
IsRegex
IsSheetName
IsTitle
IsUpper
IsUrl
IsWhitespace
JustifyCenter
JustifyLeft

JustifyRight
Quote
ReplaceChar
ReplaceRegex
ReplaceStr
Represent
Reverse
SplitLines
SplitNotQuoted
StartsWith
TrimExt
Unescape
Unquote
Wrap


note

Le premier argument de la plupart des m√©thodes est la cha√ģne √† consid√©rer. Il est toujours pass√© par r√©f√©rence et laiss√© inchang√©. Des m√©thodes telles que Capitalize, Escape, etc. renvoient une nouvelle cha√ģne apr√®s leur ex√©cution.


warning

√Čtant donn√© que Python dispose d'une prise en charge int√©gr√©e compl√®te des cha√ģnes, la plupart des m√©thodes du service String sont disponibles uniquement pour les scripts Basic. Les m√©thodes disponibles pour Basic et Python sont¬†: HashStr, IsADate, IsEmail, IsFileName, IsIBAN, IsIPv4, IsLike, IsSheetName, IsUrl, SplitNotQuoted et Wrap.


Capitalize

Met en majuscule le premier caract√®re de chaque mot dans la cha√ģne d'entr√©e.

Syntaxe :

svc.Capitalize(inputstr: str): str

Paramètres :

inputstr¬†: la cha√ģne √† mettre en majuscule.

Exemple :


    Dim sName as String : sName = "john smith"
    Dim sCapitalizedName as String
    sCapitalizedName = SF_String.Capitalize(sName)
    MsgBox sCapitalizedName 'John Smith
  

Count

Compte le nombre d'occurrences d'une sous-cha√ģne ou d'une expression r√©guli√®re dans une cha√ģne.

Syntaxe :

svc.Count(inputstr: str, substring: str, [isregex: bool], [casesensitive: bool]): int

Paramètres :

inputstr¬†: la cha√ģne d'entr√©e √† examiner

substring¬†: la sous-cha√ģne ou l'expression r√©guli√®re √† utiliser lors de la recherche

isregex¬†: utilisez True si la sous-cha√ģne est une expression r√©guli√®re (par d√©faut = False)

casesensitive : la recherche peut être sensible à la casse ou non (par défaut = False).

Exemple :


    'Compte les occurrences de la sous-cha√ģne "ou" dans la cha√ģne d'entr√©e (renvoie 2)
    MsgBox SF_String.Count("Lorem ipsum dolor sit amet, consectetur adipiscing elit.", "or", CaseSensitive := False)
    'Compte le nombre de mots avec uniquement des lettres minuscules (renvoie 7)
    MsgBox SF_String.Count("Lorem ipsum dolor sit amet, consectetur adipiscing elit.", "\b[a-z]+\b", IsRegex := True, CaseSensitive := True)
  
tip

Pour en savoir plus sur les expressions régulières, reportez-vous à la documentation de Python sur Opérations sur les expressions régulières.


EndsWith

Renvoie True si une cha√ģne se termine par une sous-cha√ģne sp√©cifi√©e.

La fonction renvoie False lorsque la cha√ģne ou la sous-cha√ģne a une longueur = 0 ou lorsque la sous-cha√ģne est plus longue que la cha√ģne.

Syntaxe :

svc.EndsWith(inputstr: str, substring: str, [casesensitive: bool]): bool

Paramètres :

inputstr¬†: la cha√ģne √† tester.

substring¬†: la sous-cha√ģne √† rechercher √† la fin de inputstr.

casesensitive : la recherche peut être sensible à la casse ou non (par défaut = False).

Exemple :


    ' Renvoie True car la méthode a été appelée avec la valeur par défaut CaseSensitive = False
    MsgBox SF_String.EndsWith("abcdefg", "EFG")
    'Renvoie False en raison du paramètre CaseSensitive
    MsgBox SF_String.EndsWith("abcdefg", "EFG", CaseSensitive := True)
  

Escape

Convertit les sauts de ligne et les tabulations contenus dans la cha√ģne d'entr√©e en leur s√©quence d'√©chappement √©quivalente (\\, \n, \r, \t).

Syntaxe :

svc.Escape(inputstr: str): str

Paramètres :

inputstr¬†: la cha√ģne √† convertir.

Exemple :


    'Renvoie la cha√ģne "abc\n\tdef\\n"
    MsgBox SF_String.Escape("abc" & Chr(10) & Chr(9) & "def\n")
  

ExpandTabs

Remplace les caractères de tabulation Chr(9) par des espaces pour reproduire le comportement des taquets de tabulation.

Si un saut de ligne est trouvé, une nouvelle ligne est commencée et le compteur de caractères est réinitialisé.

Syntaxe :

svc.ExpandTabs(inputstr: str, [tabsize: int]): str

Paramètres :

inputstr¬†: la cha√ģne √† d√©velopper

tabsize : ce paramètre est utilisé pour déterminer les taquets de tabulation à l'aide de la formule : TabSize + 1, 2 * TabSize + 1 , ... N * TabSize + 1 (par défaut = 8)

Exemple :


    Dim myText as String
    myText = "100" & SF_String.sfTAB & "200" & SF_String.sfTAB & "300" & SF_String.sfNEWLINE & _
             "X"  & SF_String.sfTAB & "Y" & SF_String.sfTAB & "Z"
    MsgBox SF_String.ExpandTabs(myText)
    '100     200     300
    'X       Y       Z
  

FilterNotPrintable

Remplace tous les caract√®res non imprimables de la cha√ģne d'entr√©e par un caract√®re donn√©.

Syntaxe :

svc.FilterNotPrintable(inputstr: str, [replacedby: str]): str

Paramètres :

inputstr¬†: la cha√ģne √† rechercher

replacedby : zéro, un ou plusieurs caractères qui remplaceront tous les caractères non imprimables dans inputstr (par défaut = "")

Exemple :


    Dim LF : LF = Chr(10)
    Dim myText as String
    myText = "√†√©n ő£lP¬Ķ" & LF & " –†—É—Ā—Ā–ļ–ł–Ļ" & "\n"
    MsgBox SF_String.FilterNotPrintable(myText)
    ' "√†√©n ő£lP¬Ķ –†—É—Ā—Ā–ļ–ł–Ļ\n"
  

FindRegex

Recherche dans une cha√ģne une sous-cha√ģne correspondant √† une expression r√©guli√®re donn√©e.

Syntaxe :

svc.FindRegex(inputstr: str, regex: str, [start: int], [casesensitive: bool], [forward: bool]): str

Paramètres :

inputstr¬†: la cha√ģne √† rechercher

regex : l'expression régulière

start¬†: la position dans la cha√ģne o√Ļ la recherche commencera. Ce param√®tre est pass√© par r√©f√©rence, donc apr√®s l'ex√©cution, la valeur de start pointera vers le premier caract√®re de la sous-cha√ģne trouv√©e. Si aucune sous-cha√ģne correspondante n'est trouv√©e, start sera d√©fini sur 0.

casesensitive : la recherche peut être sensible à la casse ou non (par défaut = False).

forward : détermine la direction de la recherche. Si True, la recherche se fait en avant. Si False la recherche se fait en arrière (par défaut = True)

A la première itération, si forward = True, alors start doit être égal à 1, alors que si forward = False alors start doit être égal à Len(inputstr)

Exemple :


    Dim lStart As Long : lStart = 1
    Dim result as String
    result = SF_String.FindRegex("abCcdefghHij", "C.*H", lStart, CaseSensitive := True)
    MsgBox lStart & ": " & result
    '3: CcdefghH
  
tip

Dans l'exemple ci-dessus, la nouvelle valeur de lStart peut √™tre utilis√©e pour continuer √† rechercher la m√™me cha√ģne d'entr√©e en d√©finissant le param√®tre Start sur lStart + Len(result) √† la prochaine it√©ration.


HashStr

Les fonctions de hachage sont utilis√©es dans certains algorithmes de chiffrement, dans les signatures num√©riques, les codes d'authentification des messages, la d√©tection des manipulations, les empreintes digitales, les sommes de contr√īle (v√©rification de l'int√©grit√© des messages), les tables de hachage, le stockage des mots de passe et bien plus encore.

La m√©thode HashStr renvoie le r√©sultat d'une fonction de hachage appliqu√©e sur une cha√ģne donn√©e et utilisant un algorithme sp√©cifi√©, sous la forme d'une cha√ģne de chiffres hexad√©cimaux minuscules.

Les algorithmes de hachage pris en charge sont : MD5, SHA1, SHA224, SHA256, SHA384 et SHA512.

Syntaxe :

svc.HashStr(inputstr: str, algorithm: str): str

Paramètres :

inputstr¬†: la cha√ģne √† hacher. Elle est suppos√©e √™tre encod√©e en UTF-8. L'algorithme de hachage consid√©rera la cha√ģne comme un flux d'octets.

algorithm¬†: l'un des algorithmes pris en charge r√©pertori√©s ci-dessus, transmis sous forme de cha√ģne.

Exemple :

En Basic :

    MsgBox SF_String.HashStr("ŇϬ°‚ĄĘ¬£¬Ę‚ąě¬ß¬∂‚Äʬ™¬ļ‚Äď‚ȆŇϬī¬ģ‚Ƭ•¬®ňÜ√łŌÄ‚Äė√•√ü‚ąā∆í¬©ňô‚ąÜňö¬¨", "MD5")
    ' c740ccc2e201df4b2e2b4aa086f35d8a
  
En Python

    svc = CreateScriptService("String")
    bas = CreateScriptService("Basic")
    a_string = "ŇϬ°‚ĄĘ¬£¬Ę‚ąě¬ß¬∂‚Äʬ™¬ļ‚Äď‚ȆŇϬī¬ģ‚Ƭ•¬®ňÜ√łŌÄ‚Äė√•√ü‚ąā∆í¬©ňô‚ąÜňö¬¨"
    hash_value = svc.HashStr(a_string, "MD5")
    bas.MsgBox(hash_value)
    # c740ccc2e201df4b2e2b4aa086f35d8a
  

HtmlEncode

Encode la cha√ģne d'entr√©e dans les codes de caract√®res HTML, en rempla√ßant les caract√®res sp√©ciaux par leurs homologues &.

Par exemple, le caractère é serait remplacé par &eacute; ou un code HTML numérique équivalent.

Syntaxe :

svc.HtmlEncode(inputstr: str): str

Paramètres :

inputstr¬†: la cha√ģne √† encoder.

Exemple :


    MsgBox SF_String.HtmlEncode("<a href=""https://a.b.com"">From őĪ to ŌČ</a>")
    ' "&lt;a href=&quot;https://a.b.com&quot;&gt;From &#945; to &#969;&lt;/a&gt;"
  

IsADate

Renvoie True si la cha√ģne d'entr√©e est une date valide selon un format de date sp√©cifi√©.

Syntaxe :

svc.IsADate(inputstr: str, [dateformat: str]): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

dateformat¬†: format de date, sous forme de cha√ģne. Il peut s'agir de "AAAA-MM-JJ" (par d√©faut), "JJ-MM-AAAA" ou "MM-JJ-AAAA"

Le tiret (-) peut être remplacé par un point (.), une barre oblique (/) ou un espace.

Si le format n'est pas valide, la méthode renvoie False.

Exemple :

En Basic :

    MsgBox SF_String.IsADate("2020-12-31", "YYYY-MM-DD") ' True
  
note

Cette m√©thode v√©rifie le format de la cha√ģne d'entr√©e sans effectuer de v√©rification sp√©cifique du calendrier. Par cons√©quent, elle ne teste pas la cha√ģne d'entr√©e pour les ann√©es bissextiles ou les mois avec 30 ou 31 jours. Pour cela, reportez-vous √† la fonction int√©gr√©e IsDate.


L'exemple ci-dessous montre la différence entre les méthodes IsADate (ScriptForge) et la fonction IsDate (intégrée).


    Dim myDate as String : myDate = "2020-02-30"
    MsgBox SF_String.IsADate(myDate, "YYYY-MM-DD") 'True
    MsgBox IsDate(myDate) ' False
  
En Python

    svc = CreateScriptService("String")
    s_date = "2020-12-31"
    result = svc.IsADate(s_date) # True
  

IsAlpha

Renvoie True si tous les caract√®res de la cha√ģne sont alphab√©tiques.

Les caractères alphabétiques sont les caractères définis dans la Unicode Character Database comme Letter.

Syntaxe :

svc.IsAlpha(inputstr: str): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

Exemple :


    MsgBox SF_String.IsAlpha("√†√©nő£lP¬Ķ") ' True
    MsgBox SF_String.IsAlpha("myVar3") ' False
  

IsAlphaNum

Renvoie True si tous les caract√®res de la cha√ģne sont alphab√©tiques, num√©riques ou "_" (trait de soulignement). Le premier caract√®re ne doit pas √™tre un chiffre.

Syntaxe :

svc.IsAlphaNum(inputstr: str): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

Exemple :


    MsgBox SF_String.IsAlphaNum("_ABC_123456_abc√†√©nő£lP¬Ķ") ' True
    MsgBox SF_String.IsAlphaNum("123ABC") ' False
  

IsAscii

Renvoie True si tous les caract√®res de la cha√ģne sont des caract√®res ASCII.

Syntaxe :

svc.IsAscii(inputstr: str): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

Exemple :


    MsgBox SF_String.IsAscii("a%?,25") ' True
    MsgBox SF_String.IsAscii("abc√†√©nő£lP¬Ķ") ' False
  

IsDigit

Renvoie True si tous les caract√®res de la cha√ģne sont des chiffres.

Syntaxe :

svc.IsDigit(inputstr: str): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

Exemple :


    MsgBox SF_String.IsDigit("123456") ' True
    MsgBox SF_String.IsDigit("_12a") ' False
  

IsEmail

Renvoie True si la cha√ģne est une adresse e-mail valide.

Syntaxe :

svc.IsEmail(inputstr: str): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

Exemple :

En Basic :

    MsgBox SF_String.IsEmail("first.last@something.org") ' True
    MsgBox SF_String.IsEmail("first.last@something.com.br") ' True
    MsgBox SF_String.IsEmail("first.last@something.123") ' False
  
En Python

    svc = CreateScriptService("String")
    bas = CreateScriptService("Basic")
    bas.MsgBox(svc.IsEmail("first.last@something.org")) # True
    bas.MsgBox(svc.IsEmail("first.last@something.com.br")) # True
    bas.MsgBox(svc.IsEmail("first.last@something.123")) # False
  

IsFileName

Renvoie True si la cha√ģne est un nom de fichier valide dans un syst√®me d'exploitation donn√©.

Syntaxe :

svc.IsFileName(inputstr: str, [osname: str]): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

osname¬†: le nom du syst√®me d'exploitation, sous forme de cha√ģne. Il peut s'agir de "WINDOWS", "LINUX", "MACOSX" ou "SOLARIS".

La valeur par défaut est le système d'exploitation actuel sur lequel le script s'exécute.

Exemple :

En Basic :

    MsgBox SF_String.IsFileName("/home/user/Documents/a file name.odt", "LINUX") ' True
    MsgBox SF_String.IsFileName("C:\home\a file name.odt", "LINUX") ' False
    MsgBox SF_String.IsFileName("C:\home\a file name.odt", "WINDOWS") ' True
  
En Python

    svc = CreateScriptService("String")
    bas = CreateScriptService("Basic")
    bas.MsgBox(svc.IsFileName("/home/user/Documents/a file name.odt", "LINUX")) # True
    bas.MsgBox(svc.IsFileName(r"C:\home\a file name.odt", "LINUX")) # False
    bas.MsgBox(svc.IsFileName(r"C:\home\a file name.odt", "WINDOWS")) # True
  

IsHexDigit

Renvoie True si tous les caract√®res de la cha√ģne sont des chiffres hexad√©cimaux.

Syntaxe :

svc.IsHexDigit(inputstr: str): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

Les chiffres hexadécimaux peuvent être précédés de "0x" ou "&H".

Exemple :


    MsgBox SF_String.IsHexDigit("&H00FF") ' True
    MsgBox SF_String.IsHexDigit("08AAFF10") ' True
    MsgBox SF_String.IsHexDigit("0x18LA22") ' False
  

IsIBAN

Renvoie True si la cha√ģne est un num√©ro de compte bancaire international (IBAN) valide. La comparaison n'est pas sensible √† la casse.

Syntaxe :

svc.IsIBAN(inputstr: str): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

Valeur de retour :

True si la cha√ģne contient un num√©ro IBAN valide.

Exemple :


    ' Basic
    MsgBox SF_String.IsIBAN("BR15 0000 0000 0000 1093 2840 814 P2") ' True
  

    # Python
    result = svc.IsIBAN("BR15 0000 0000 0000 1093 2840 814 P2") # True
  

IsIPv4

Renvoie True si la cha√ģne est une adresse IP(v4) valide.

Syntaxe :

svc.IsIPv4(inputstr: str): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

Exemple :

En Basic :

    MsgBox SF_String.IsIPv4("192.168.1.50") ' True
    MsgBox SF_String.IsIPv4("192.168.50") ' False
    MsgBox SF_String.IsIPv4("255.255.255.256") ' False
  
En Python

    svc = CreateScriptService("String")
    bas = CreateScriptService("Basic")
    bas.MsgBox(svc.IsIPv4("192.168.1.50")) # True
    bas.MsgBox(svc.IsIPv4("192.168.50")) # False
    bas.MsgBox(svc.IsIPv4("255.255.255.256")) # False
  

IsLike

Renvoie True si toute la cha√ģne d'entr√©e correspond √† un mod√®le donn√© contenant des caract√®res g√©n√©riques.

Syntaxe :

svc.IsLike(inputstr: str, pattern: str, [casesensitive: bool]): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

motif¬†: le mod√®le sous forme de cha√ģne. Les jokers sont¬†:

casesensitive : la recherche peut être sensible à la casse ou non (par défaut = False).

Exemple :

En Basic :

    MsgBox SF_String.IsLike("aAbB", "?A*") ' True
    MsgBox SF_String.IsLike("C:\a\b\c\f.odb", "?:*.*") ' True
    MsgBox SF_String.IsLike("name:host", "?*@?*") ' False
    MsgBox SF_String.IsLike("@host", "?*@?*") ' False
  
En Python

    svc = CreateScriptService("String")
    bas = CreateScriptService("Basic")
    bas.MsgBox(svc.IsLike("aAbB", "?A*")) # True
    bas.MsgBox(svc.IsLike(r"C:\a\b\c\f.odb", "?:*.*")) # True
    bas.MsgBox(svc.IsLike("name:host", "?*@?*")) # False
    bas.MsgBox(svc.IsLike("@host", "?*@?*")) # False
  

IsLower

Renvoie True si tous les caract√®res de la cha√ģne sont en minuscules. Les caract√®res non alphab√©tiques sont ignor√©s.

Syntaxe :

svc.IsLower(inputstr: str): bool

Paramètres :

InputStr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False.

Exemple :


    MsgBox SF_String.IsLower("abc'(-xy4z") ' True
    MsgBox SF_String.IsLower("1234") ' True
    MsgBox SF_String.IsLower("abcDefg") ' False
  

IsPrintable

Renvoie True si tous les caract√®res de la cha√ģne sont imprimables.

Syntaxe :

svc.IsPrintable(inputstr: str): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

Exemple :


    MsgBox SF_String.IsPrintable("√†√©n ő£lP¬Ķ –†—É—Ā—Ā–ļ–ł–Ļ") ' True
    MsgBox SF_String.IsPrintable("First line." & Chr(10) & "Second Line.") ' False
  

IsRegex

Renvoie True si toute la cha√ģne d'entr√©e correspond √† une expression r√©guli√®re donn√©e.

Syntaxe :

svc.IsRegex(inputstr: str, regex: str, [casesensitive: bool]): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

regex : L'expression régulière. Si vide, la méthode renvoie False.

casesensitive : la recherche peut être sensible à la casse ou non (par défaut = False).

Exemple :


        MsgBox SF_String.IsRegex("aAbB", "[A-Za-z]+") ' True
        MsgBox SF_String.IsRegex("John;100", "[A-Za-z]+;[0-9]+") ' True
        MsgBox SF_String.IsRegex("John;100;150", "[A-Za-z]+;[0-9]+") ' False
      

IsSheetName

Renvoie True si la cha√ģne d'entr√©e est un nom de feuille Calc valide.

Syntaxe :

svc.IsSheetName(inputstr: str): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

Exemple :

En Basic :

    MsgBox SF_String.IsSheetName("1àbc + ""déf""") ' True
    MsgBox SF_String.IsSheetName("[MySheet]") ' False
  
En Python

    svc = CreateScriptService("String")
    bas = CreateScriptService("Basic")
    bas.MsgBox(svc.IsSheetName("1àbc + ""déf""")) # True
    bas.MsgBox(svc.IsSheetName("[MySheet]")) # False
  
note

Un nom de feuille ne doit pas contenir les caractères [ ] * ? : / \ ou le caractère ' (apostrophe) comme premier ou dernier caractère.


IsTitle

Renvoie True si le premier caractère de chaque mot est en majuscule et les autres caractères sont en minuscules.

Syntaxe :

svc.IsTitle(inputstr: str): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

Exemple :


    MsgBox SF_String.IsTitle("This Is The Title Of My Book") ' True
    MsgBox SF_String.IsTitle("This is the Title of my Book") ' False
    MsgBox SF_String.IsTitle("Result Number 100") ' True
  

IsUpper

Renvoie True si tous les caract√®res de la cha√ģne sont en majuscules. Les caract√®res non alphab√©tiques sont ignor√©s.

Syntaxe :

svc.IsUpper(inputstr: str): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

Exemple :


    MsgBox SF_String.IsUpper("ABC'(-XYZ") ' True
    MsgBox SF_String.IsUpper("A Title") ' False
  

IsUrl

Renvoie True si la cha√ģne est une adresse URL absolue (Uniform Resource Locator) valide. Seuls les protocoles http, https et ftp sont pris en charge.

Syntaxe :

svc.IsUrl(inputstr: str): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

Exemple :

En Basic :

    MsgBox SF_String.IsUrl("http://foo.bar/?q=Test%20URL-encoded%20stuff") ' True
    MsgBox SF_String.IsUrl("www.somesite.org") ' False
  
En Python

    svc = CreateScriptService("String")
    bas = CreateScriptService("Basic")
    bas.MsgBox(svc.IsUrl("http://foo.bar/?q=Test%20URL-encoded%20stuff")) # True
    bas.MsgBox(svc.IsUrl("www.somesite.org")) # False
  

IsWhitespace

Renvoie True si tous les caract√®res de la cha√ģne sont des espaces

Syntaxe :

svc.IsWhitespace(inputstr: str): bool

Paramètres :

inputstr¬†: la cha√ģne √† v√©rifier. Si vide, la m√©thode renvoie False

Exemple :


    MsgBox SF_String.IsWhitespace("    ") ' True
    MsgBox SF_String.IsWhitespace(" " & Chr(9) & Chr(10)) ' True
    MsgBox SF_String.IsWhitespace("") ' False
  

JustifyCenter

Renvoie la cha√ģne d'entr√©e justifi√©e au centre.

Les espaces blancs de début et de fin sont supprimés et les caractères restants sont complétés à gauche et à droite jusqu'à une length totale spécifiée avec le caractère padding.

Syntaxe :

svc.JustifyCenter(inputstr: str, [length: int], [padding: str]): str

Paramètres :

inputstr¬†: la cha√ģne √† justifier au centre. Si elle est vide, la m√©thode renvoie une cha√ģne vide.

length¬†: la longueur de la cha√ģne r√©sultante (par d√©faut = la longueur de la cha√ģne d'entr√©e).

Si la longueur sp√©cifi√©e est plus courte que la cha√ģne d'entr√©e justifi√©e au centre, la cha√ģne renvoy√©e est tronqu√©e.

padding : Le caractère unique à utiliser comme remplissage (par défaut = l'espace ASCII " ").

Exemple :


    MsgBox SF_String.JustifyCenter("Title", Length := 11) ' "   Title   "
    MsgBox SF_String.JustifyCenter("    ABCDEF", Padding := "_") ' "__ABCDEF__"
    MsgBox SF_String.JustifyCenter("A Long Title", Length := 5) ' "ong T"
  

JustifyLeft

Renvoie la cha√ģne d'entr√©e justifi√©e √† gauche.

Les espaces blancs au début sont supprimés et les caractères restants sont complétés à droite jusqu'à une length totale spécifiée avec le caractère padding.

Syntaxe :

svc.JustifyLeft(inputstr: str, [length: int], [padding: str]): str

Paramètres :

inputstr¬†: la cha√ģne √† justifier √† gauche. Si elle est vide, la m√©thode renvoie une cha√ģne vide.

length¬†: la longueur de la cha√ģne r√©sultante (par d√©faut = la longueur de la cha√ģne d'entr√©e).

Si la longueur sp√©cifi√©e est plus courte que la cha√ģne d'entr√©e justifi√©e √† gauche, la cha√ģne renvoy√©e est tronqu√©e.

padding : Le caractère unique à utiliser comme remplissage (par défaut = l'espace ASCII " ").

Exemple :


    MsgBox SF_String.JustifyLeft("Title", Length := 10) ' "Title     "
    MsgBox SF_String.JustifyLeft("    ABCDEF", Padding := "_") ' "ABCDEF____"
    MsgBox SF_String.JustifyLeft("A Long Title", Length := 5) ' "A Lon"
  

JustifyRight

Renvoie la cha√ģne d'entr√©e justifi√©e √† droite.

Les espaces blancs au début sont supprimés et les caractères restants sont complétés à gauche jusqu'à une length totale spécifiée avec le caractère padding.

Syntaxe :

svc.JustifyRight(inputstr: str, [length: int], [padding: str]): str

Paramètres :

inputstr¬†: la cha√ģne √† justifier √† droite. Si elle est vide, la m√©thode renvoie une cha√ģne vide.

length¬†: la longueur de la cha√ģne r√©sultante (par d√©faut = la longueur de la cha√ģne d'entr√©e).

Si la longueur sp√©cifi√©e est plus courte que la cha√ģne d'entr√©e justifi√©e √† droite, la cha√ģne renvoy√©e est tronqu√©e.

padding : Le caractère unique à utiliser comme remplissage (par défaut = l'espace ASCII " ").

Exemple :


    MsgBox SF_String.JustifyRight("Title", Length := 10) ' "     Title"
    MsgBox SF_String.JustifyRight("  ABCDEF  ", Padding := "_") ' "____ABCDEF"
    MsgBox SF_String.JustifyRight("A Long Title", Length := 5) ' "Title"
  

Quote

Renvoie la cha√ģne d'entr√©e entre guillemets simples ou doubles. Les guillemets existants restent inchang√©s, y compris les guillemets de d√©but et/ou de fin.

Syntaxe :

svc.Quote(inputstr: str, [quotechar: str]): str

Paramètres :

inputstr¬†: la cha√ģne √† mettre entre guillemets.

quotechar : soit le guillemet simple (') ou double ("") (par défaut).

Exemple :


    MsgBox SF_String.Quote("Text Value")
    ' "Text Value"
    MsgBox SF_String.Quote("Book Title: ""The Arabian Nights""", "'")
    ' 'Book Title: "The Arabian Nights"'
  
tip

Cette m√©thode peut √™tre utile lors de la pr√©paration d'un champ de cha√ģne √† stocker dans un fichier de type csv, qui n√©cessite que les valeurs de texte soient entour√©es de guillemets simples ou doubles.


ReplaceChar

Remplace toutes les occurrences des caractères spécifiés dans le paramètre Before par les caractères correspondants spécifiés dans After.

Si la longueur de Before est supérieure à la longueur de After, les caractères résiduels dans Before sont remplacés par le dernier caractère dans After.

Syntaxe :

svc.ReplaceChar(inputstr: str, before: str, after: str): str

Paramètres :

inputstr¬†: la cha√ģne d'entr√©e sur laquelle les remplacements auront lieu.

before¬†: une cha√ģne avec les caract√®res qui seront recherch√©s dans la cha√ģne d'entr√©e pour le remplacement.

after¬†: une cha√ģne avec les nouveaux caract√®res qui remplaceront ceux d√©finis dans before.

Exemple :


    ' Remplace les caractères accentués
    MsgBox SF_String.ReplaceChar("Prot√©gez votre vie priv√©e", "√†√Ę√£√ß√®√©√™√ę√ģ√Į√ī√∂√Ľ√ľ√Ĺ√Ņ", "aaaceeeeiioouuyy")
    ' "Protegez votre vie privee"
    MsgBox SF_String.ReplaceChar("Prot√©gez votre vie priv√©e", "√†√Ę√£√ß√®√©√™√ę√ģ√Į√ī√∂√Ľ√ľ√Ĺ√Ņ", "")
    ' "Protgez votre vie prive"
    MsgBox SF_String.ReplaceChar("√†√Ę√£√ß√®√©√™√ę√ģ√Į√ī√∂√Ľ√ľ√Ĺ√Ņ", "√†√Ę√£√ß√®√©√™√ę√ģ√Į√ī√∂√Ľ√ľ√Ĺ√Ņ", "aaaceeeeiioouuyy")
    ' "aaaceeeeiioouuyy"
  

Le service SF_String fournit des constantes publiques utiles pour les jeux de caractères latins, comme illustré dans l'exemple ci-dessous :


    MsgBox SF_String.ReplaceChar("Protégez votre vie privée", SF_String.CHARSWITHACCENT, SF_String.CHARSWITHOUTACCENT)
    ' "Protegez votre vie privee"
  

ReplaceRegex

Remplace toutes les occurrences d'une expression r√©guli√®re donn√©e par une nouvelle cha√ģne.

Syntaxe :

svc.ReplaceRegex(inputstr: str, regex: str, newstr: str, [casesensitive: bool]): str

Paramètres :

inputstr¬†: la cha√ģne d'entr√©e sur laquelle les remplacements auront lieu.

regex : l'expression régulière.

newstr¬†:¬†la cha√ģne de remplacement.

casesensitive : la recherche peut être sensible à la casse ou non (par défaut = False).

Exemple :


    MsgBox SF_String.ReplaceRegex("Lorem ipsum dolor sit amet, consectetur adipiscing elit.", "[a-z]", "x", CaseSensitive := True)
    " "Lxxxx xxxxx xxxxx xxx xxxx, xxxxxxxxxxx xxxxxxxxxx xxxx." (chaque lettre minuscule est remplacée par "x")
    MsgBox SF_String.ReplaceRegex("Lorem ipsum dolor sit amet, consectetur adipiscing elit.", "\b[a-z]+\b", "x", CaseSensitive := False)
    ' "x x x x x, x x x." (chaque mot est remplacé par "x")
  

ReplaceStr

Remplace dans une cha√ģne certaines ou toutes les occurrences d'une matrice de cha√ģnes par une matrice de nouvelles cha√ģnes.

Syntaxe :

svc.ReplaceStr(inputstr: str, oldstr: str, newstr: str, [occurrences: int], [casesensitive: bool]): str

Paramètres :

inputstr¬†: la cha√ģne d'entr√©e sur laquelle les remplacements auront lieu.

oldstr¬†:¬†une cha√ģne unique ou une matrice de cha√ģnes. Les cha√ģnes de longueur nulle sont ignor√©es.

newstr¬†:¬†la cha√ģne de remplacement ou la matrice de cha√ģnes de remplacement.

Si oldstr est une matrice, chaque occurrence de l'un des éléments de oldstr est remplacée par newstr.

Si oldstr et newstr sont des matrices, les remplacements se produisent un par un jusqu'à UBound(newstr).

Si oldstr a plus d'entrées que newstr, alors les éléments résiduels de oldstr sont remplacés par le dernier élément de newstr .

occurrences : nombre maximum de remplacements. La valeur par défaut est 0, ce qui signifie que toutes les occurrences seront remplacées.

Lorsque oldstr est une matrice, le paramètre occurrence est calculé séparément pour chaque élément de la matrice.

casesensitive : la recherche peut être sensible à la casse ou non (par défaut = False).

Exemple :


    MsgBox SF_String.ReplaceStr("100 xxx 200 yyy", Array("xxx", "yyy"), Array("(1)", "(2)"), CaseSensitive := False)
    ' "100 (1) 200 (2)"
    MsgBox SF_String.ReplaceStr("abCcdefghHij", Array("c", "h"), Array("Y", "Z"), CaseSensitive := False)
    ' "abYYdefgZZij"
  

Represent

Renvoie une cha√ģne avec une repr√©sentation lisible de l'argument, tronqu√©e √† une longueur donn√©e. Ceci est utile principalement √† des fins de d√©bogage ou de journalisation.

Si le paramètre anyvalue est un objet, il sera entouré de crochets "[" et "]".

Dans les cha√ģnes, les tabulations et les sauts de ligne sont remplac√©s par \t, \n ou \r.

Si la longueur finale d√©passe le param√®tre maxlength, la derni√®re partie de la cha√ģne est remplac√©e par " ... (N)" o√Ļ N est la longueur totale de la cha√ģne d'origine avant troncature.

Syntaxe :

svc.Represent(anyvalue: any, [maxlength: int]): str

Paramètres :

anyvalue¬†: la valeur d'entr√©e √† repr√©senter. Il peut s'agir de n'importe quelle valeur, comme une cha√ģne, un tableau, un objet Basic, un objet UNO, etc.

maxlength¬†: La longueur maximale de la cha√ģne r√©sultante. La valeur par d√©faut est 0, ce qui signifie qu'il n'y a aucune limite √† la longueur de la repr√©sentation r√©sultante.

Exemple :


    MsgBox SF_String.Represent("this is a usual string") ' "this is a usual string"
    MsgBox SF_String.Represent("this is a usual string", 15) ' "this i ... (22)"
    MsgBox SF_String.Represent("this is a" & Chr(10) & " 2-lines string") ' "this is a\n 2-lines string"
    MsgBox SF_String.Represent(Empty) ' "[EMPTY]"
    MsgBox SF_String.Represent(Null) ' "[NULL]"
    MsgBox SF_String.Represent(Pi) ' "3.142"
    MsgBox SF_String.Represent(CreateUnoService("com.sun.star.util.PathSettings")) ' "[com.sun.star.comp.framework.PathSettings]"
  

Notez que la représentation des types de données tels que les matrices et les instances d'objets ScriptForge.Dictionary incluent à la fois le type de données et leurs valeurs :


    ' Un exemple avec une matrice intégrée en Basic
    MsgBox SF_String.Represent(Array(1, 2, "Text" & Chr(9) & "here"))
    ' "[ARRAY] (0:2) (1, 2, Text\there)"
    ' Un exemple avec une matrice ScriptForge
    Dim aValues as Variant
    aValues = SF_Array.RangeInit(1, 5)
    MsgBox SF_String.Represent(aValues)
    ' "[ARRAY] (0:4) (1.0, 2.0, 3.0, 4.0, 5.0)"
    ' Un exemple avec un dictionnaire ScriptForge
    Dim myDict As Variant : myDict = CreateScriptService("Dictionary")
    myDict.Add("A", 1) : myDict.Add("B", 2)
    MsgBox SF_String.Represent(myDict)
    ' "[Dictionary] ("A":1, "B":2)"
  

Reverse

Renvoie la cha√ģne d'entr√©e dans l'ordre invers√©.

Cette méthode est équivalente à la StrReverse fonction de base intégrée.

note

Pour utiliser la fonction StrReverse, l'instruction Option VBASupport 1 doit être présente dans le module.


Syntaxe :

svc.Reverse(inputstr: str): str

Paramètres :

inputstr¬†: la cha√ģne √† inverser.

Exemple :


    MsgBox SF_String.Reverse("abcdefghij") ' "jihgfedcba"
  

SplitLines

Renvoie une matrice de cha√ģnes de base z√©ro avec les lignes de la cha√ģne d'entr√©e. Chaque √©l√©ment de la matrice est obtenu en divisant la cha√ģne d'entr√©e en caract√®res de nouvelle ligne.

Syntaxe :

svc.SplitLines(inputstr: str, [keepbreaks: int]): str[0..*]

Paramètres :

inputstr¬†:¬†la cha√ģne √† diviser.

keepbreaks : lorsque True, les sauts de ligne sont conservés dans le tableau de sortie (par défaut = False).

Exemple :


    Dim a as Variant
    a = SF_String.SplitLines("Line1" & Chr(10) & "Line2" & Chr(13) & "Line3")
    ' a = Array("Line1", "Line2", "Line3")
    a = SF_String.SplitLines("Line1" & Chr(10) & "Line2" & Chr(13) & "Line3" & Chr(10))
    ' a = Array("Line1", "Line2", "Line3", "")
    a = SF_String.SplitLines("Line1" & Chr(10) & "Line2" & Chr(13) & "Line3" & Chr(10), KeepBreaks := True)
    ' a = Array("Line1\n", "Line2\r", "Line3\n", "")
  

SplitNotQuoted

Divise une cha√ģne en une matrice d'√©l√©ments √† l'aide d'un d√©limiteur sp√©cifi√©.

Si une sous-cha√ģne entre guillemets contient un d√©limiteur, celui-ci est ignor√©. Ceci est utile lors de l'analyse d'enregistrements de type CSV contenant des cha√ģnes entre guillemets.

Syntaxe :

svc.SplitNotQuoted(inputstr: str, [delimiter: str], [occurrences: int], [quotechar: str]): str[0..*]

Paramètres :

inputstr¬†:¬†la cha√ģne √† diviser.

delimiter¬†: Une cha√ģne d'un ou plusieurs caract√®res qui sera utilis√©e comme d√©limiteur. Le d√©limiteur par d√©faut est le caract√®re espace ASCII " ".

occurrences¬†: le nombre maximum de sous-cha√ģnes √† renvoyer. La valeur par d√©faut est 0, ce qui signifie qu'il n'y a pas de limite au nombre de cha√ģnes renvoy√©es.

quotechar : soit le guillemet simple (') ou double (").

Exemple :

En Basic :

    arr1 = SF_String.SplitNotQuoted("abc def ghi")
    ' arr1 = Array("abc", "def", "ghi")
    arr2 = SF_String.SplitNotQuoted("abc,""def,ghi""", ",")
    ' arr2 = Array("abc", """def,ghi""")
    arr3 = SF_String.SplitNotQuoted("abc,""def\"",ghi""", ",")
     ' arr3 = Array("abc", """def\"",ghi""")
    arr4 = SF_String.SplitNotQuoted("abc,""def\"",ghi"""",", ",")
    ' arr4 = Array("abc", """def\"",ghi""", "")
  
En Python

    svc = CreateScriptService("String")
    arr1 = svc.SplitNotQuoted('abc def ghi')
    # arr1 = ('abc', 'def', 'ghi')
    arr2 = svc.SplitNotQuoted('abc,"def,ghi"', ",")
    # arr2 = ('abc', '"def,ghi"')
    arr3 = svc.SplitNotQuoted(r'abc,"def\",ghi"', ",")
    # arr3 = ('abc', '"def\\",ghi"')
    arr4 = svc.SplitNotQuoted(r'abc,"def\",ghi"",', ",")
    # arr4 = ('abc', '"def\\",ghi""', '')
  
note

M√©fiez-vous des diff√©rences entre Basic et Python lors de la repr√©sentation de cha√ģnes. Par exemple, en Basic, deux caract√®res "" √† l'int√©rieur d'une cha√ģne sont interpr√©t√©s comme un seul caract√®re ". En Python, les cha√ģnes entour√©es de guillemets simples peuvent contenir des caract√®res " sans avoir √† les doubler.


StartsWith

Renvoie True si les premiers caract√®res d'une cha√ģne sont identiques √† une sous-cha√ģne donn√©e.

Cette m√©thode renvoie False si la cha√ģne d'entr√©e ou la sous-cha√ģne a une longueur = 0 ou lorsque la sous-cha√ģne est plus longue que la cha√ģne d'entr√©e.

Syntaxe :

svc.StartsWith(inputstr: str, substring: str, [casesensitive: bool]): bool

Paramètres :

inputstr¬†: la cha√ģne √† tester.

substring¬†: la sous-cha√ģne √† rechercher au d√©but de inputstr.

casesensitive : la recherche peut être sensible à la casse ou non (par défaut = False).

Exemple :


    MsgBox SF_String.StartsWith("abcdefg", "ABC") 'True
    MsgBox SF_String.StartsWith("abcdefg", "ABC", CaseSensitive := True) 'False
  

TrimExt

Renvoie la cha√ģne d'entr√©e sans ses espaces de d√©but et de fin.

Syntaxe :

svc.TrimExt(inputstr: str): str

Paramètres :

inputstr¬†:¬†la cha√ģne √† couper.

Exemple :


    MsgBox SF_String.TrimExt(" Some text.  ") ' "Some text."
    MsgBox SF_String.TrimExt("   ABCDEF" & Chr(9) & Chr(10) & Chr(13) & " ") ' "ABCDEF"
  

Unescape

Convertit toute s√©quence √©chapp√©e (\\, \n, \r, \t) dans la cha√ģne d'entr√©e en son caract√®re ASCII correspondant.

Syntaxe :

svc.Unescape(inputstr: str): str

Paramètres :

inputstr¬†: la cha√ģne √† convertir.

Exemple :


    MsgBox SF_String.Unescape("abc\n\tdef\\n")
    ' "abc" & Chr(10) & Chr(9) & "def\n"
  

Unquote

Supprime les guillemets simples ou doubles entourant la cha√ģne d'entr√©e.

Ceci est utile lors de l'analyse d'enregistrements de type CSV contenant des cha√ģnes entre guillemets.

Syntaxe :

svc.Unquote(inputstr: str, [quotechar: str]): str

Paramètres :

inputstr¬†:¬†la cha√ģne dont les guillemets doivent √™tre supprim√©s.

quotechar : soit le guillemet simple (') ou double ("") (par défaut).

Exemple :


    Dim s as String
    ' s = "Du texte" (sans guillemets)
    s = SF_String.Unquote("""Some text""")
    ' La cha√ģne ci-dessous n'a pas de guillemets, elle reste donc inchang√©e
    ' s = "Du texte" (inchangé)
    s = SF_String.Unquote("Some text")
    ' Les guillemets √† l'int√©rieur de la cha√ģne ne sont pas supprim√©s
    ' s = "The ""true"" meaning" (inchangé)
    s = SF_String.Unquote("The ""true"" meaning")
  

Wrap

Convertit la cha√ģne d'entr√©e en une matrice de sous-cha√ģnes afin que chaque √©l√©ment du tableau contienne au plus un nombre donn√© de caract√®res.

En pratique, cette méthode renvoie une matrice de lignes de sortie de base zéro, sans nouvelles lignes à la fin, à l'exception des sauts de ligne préexistants.

Les onglets sont développés à l'aide de la même procédure effectuée par la méthode ExpandTabs.

Les sauts de ligne symboliques sont remplacés par leurs caractères ASCII équivalents.

Si la sortie encapsulée n'a pas de contenu, la matrice renvoyée est vide.

Syntaxe :

svc.Wrap(inputstr: str, [width: int], [tabsize: int]): str

Paramètres :

inputstr¬†:¬†la cha√ģne √† envelopper.

width : le nombre maximum de caractères dans chaque ligne (par défaut = 70).

tabsize : avant d'envelopper le texte, les caractères TAB Chr(9) existants sont remplacés par des espaces. L'argument tabsize définit les arrêts de tabulation à TabSize + 1, 2 * TabSize + 1 , ... N * TabSize + 1 (par défaut = 8).

Exemple :

En Basic :

    a = "Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit..."
    b = SF_String.Wrap(a, 20)
    ' Array("Neque porro ", "quisquam est qui ", "dolorem ipsum quia ", "dolor sit amet, ", "consectetur, ", "adipisci velit...")
  
En Python

    a = "Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit..."
    b = svc.Wrap(a, 20)
    # ('Neque porro ', 'quisquam est qui ', 'dolorem ipsum quia ', 'dolor sit amet, ', 'consectetur, ', 'adipisci velit...')
  
warning

Toutes les routines ou identifiants de base ScriptForge qui sont préfixés par un caractère de soulignement "_" sont réservés à un usage interne. Ils ne sont pas destinés à être utilisés dans des macros de base ou des scripts Python.


Aidez-nous !