ScriptForge . String serbisyo

Ang String nagbibigay ang serbisyo ng isang koleksyon ng mga pamamaraan para sa pagproseso ng string. Ang mga pamamaraang ito ay maaaring gamitin sa:

Mga Kahulugan

Mga line break

Ang String Kinikilala ng serbisyo ang mga sumusunod na line break:

Simbolikong pangalan

Numero ng ASCII

Line feed
Vertical na tab
Pagbabalik ng karwahe
Carriage return + Line feed
File separator
Tagahiwalay ng grupo
Record separator
Susunod na linya
Tagahiwalay ng linya
Separator ng talata

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


Mga whitespace

Ang String Kinikilala ng serbisyo ang mga sumusunod na whitespace:

Simbolikong pangalan

Numero ng ASCII

kalawakan
Pahalang na tab
Line feed
Vertical na tab
Form feed
Pagbabalik ng karwahe
Susunod na linya
Walang-break na espasyo
Tagahiwalay ng linya
Separator ng talata

32
9
10
11
12
13
133
160
8232
8233


Mga pagkakasunud-sunod ng pagtakas

Nasa ibaba ang isang listahan ng mga escape sequence na maaaring gamitin sa mga string.

Pagkakasunud-sunod ng Pagtakas

Simbolikong pangalan

Numero ng ASCII

\n
\r
\t

Line feed
Pagbabalik ng karwahe
Pahalang na tab

10
13
9


tip

Upang mabigyang-kahulugan ang escape sequence na "\n" bilang isang aktwal na string, gamitin lang ang "\\n" sa halip na "\" at Chr(10).


Mga hindi napi-print na character:

Ang mga character na tinukoy sa Unicode Character Database bilang "Iba pa" o "Separator" ay itinuturing na hindi napi-print na mga character.

Ang mga control character (ASCII code <= 0x1F) ay itinuturing din na hindi napi-print.

Mga quote sa loob ng mga string:

Upang magdagdag ng mga quote sa mga string, gamitin ang \' (iisang quote) o \" (double quote). Halimbawa:

Panawagan sa serbisyo

Bago gamitin ang ScriptForge.String serbisyo ang ScriptForge kailangang i-load ang library gamit ang:

Sa Basic

      GlobalScope.BasicLibraries.loadLibrary("ScriptForge")
  

Ang paglo-load sa library ay lilikha ng SF_String bagay na maaaring gamitin upang tawagan ang mga pamamaraan sa String serbisyo.

Ipinapakita ng mga sumusunod na snippet ng code ang tatlong paraan ng pagtawag sa mga pamamaraan mula sa String serbisyo (ang I-capitalize paraan ay ginagamit bilang isang halimbawa):


    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
  
Sa Python

Ang code snippet sa ibaba ay naglalarawan kung paano mag-invoke ng mga pamamaraan mula sa String serbisyo sa mga script ng Python. Ang IsIPv4 paraan ay ginagamit bilang isang halimbawa.


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

Mga Katangian

Ang SF_String Ang object ay nagbibigay ng mga sumusunod na katangian para sa mga Pangunahing script:

Pangalan

ReadOnly

Mga nilalaman

sfCR

Mayroon

Pagbabalik ng karwahe: Chr(13)

sfCRLF

Mayroon

Pagbabalik ng karwahe + Linefeed: Chr(13) at Chr(10)

sfLF

Mayroon

Linefeed: Chr(10)

sfNEWLINE

Mayroon

Carriage return + Linefeed, na maaaring
1) Chr(13) at Chr(10) o
2) Linefeed: Chr(10)
depende sa operating system.

sfTAB

Mayroon

Pahalang na tabulasyon: Chr(9)


tip

Maaari mong gamitin ang mga katangian sa itaas upang tukuyin o ipasok ang mga kaukulang character sa loob ng mga string. Halimbawa, ang Linefeed ay maaaring palitan ng SF_String.sfLF .


Listahan ng Mga Paraan sa String Service

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

Ang unang argumento ng karamihan sa mga pamamaraan ay ang string na isasaalang-alang. Ito ay palaging ipinapasa sa pamamagitan ng sanggunian at hindi nagbabago. Mga pamamaraan tulad ng I-capitalize , tumakas , atbp ay nagbabalik ng bagong string pagkatapos ng kanilang pagpapatupad.


warning

Dahil ang Python ay may komprehensibong built-in na suporta sa string, karamihan sa mga pamamaraan sa String ang serbisyo ay magagamit lamang para sa mga Pangunahing script. Ang mga pamamaraan na magagamit para sa Basic at Python ay: HashStr , IsADate , IsEmail , IsFileName , IsIBAN , IsIPv4 , AyLike , IsSheetName , IsUrl , SplitNotQuoted at Balutin .


Capitalize

I-capitalize ang unang character mula sa bawat salita sa input string.

Syntax:

svc.Capitalize(inputstr: str): str

Mga Parameter:

inputstr : Ang string na dapat i-capitalize.

Halimbawa:


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

Count

Binibilang ang bilang ng mga paglitaw ng isang substring o isang regular na expression sa loob ng isang string.

Syntax:

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

Mga Parameter:

inputstr : Ang input string na susuriin

substring : Ang substring o ang regular na expression na gagamitin sa paghahanap

isregex : Gamitin totoo kung ang substring ay isang regular na expression (Default = Mali )

casesensitive : Ang paghahanap ay maaaring case sensitive o hindi (Default = Mali ).

Halimbawa:


    'Binibilang ang mga paglitaw ng substring "o" sa loob ng input string (nagbabalik ng 2)
    MsgBox SF_String.Count("Lorem ipsum dolor sit amet, consectetur adipiscing elit.", "or", CaseSensitive := False)
    'Binibilang ang bilang ng mga salita na may maliliit na titik lamang (nagbabalik ng 7)
    MsgBox SF_String.Count("Lorem ipsum dolor sit amet, consectetur adipiscing elit.", "\b[a-z]+\b", IsRegex := True, CaseSensitive := True)
  
tip

Upang matuto nang higit pa tungkol sa mga regular na expression, sumangguni sa dokumentasyon ng Python sa Mga Regular na Ekspresyon na Operasyon .


EndsWith

Nagbabalik totoo kung ang isang string ay nagtatapos sa isang tinukoy na substring.

Nagbabalik ang function Mali kapag ang string o ang substring ay may haba = 0 o kapag ang substring ay mas mahaba kaysa sa string.

Syntax:

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

Mga Parameter:

inputstr : Ang string na susuriin.

substring : Ang substring na hahanapin sa dulo ng inputstr .

casesensitive : Ang paghahanap ay maaaring case sensitive o hindi (Default = Mali ).

Halimbawa:


    'Nagbabalik ng Tama dahil ang pamamaraan ay tinawag na may default na CaseSensitive = False
    MsgBox SF_String.EndsWith("abcdefg", "EFG")
    'Nagbabalik ng Mali dahil sa CaseSensitive na parameter
    MsgBox SF_String.EndsWith("abcdefg", "EFG", CaseSensitive := True)
  

Escape

Kino-convert ang mga linebreak at tab na nakapaloob sa input string sa kanilang katumbas na escaped sequence (\\, \n, \r, \t).

Syntax:

svc.Escape(inputstr: str): str

Mga Parameter:

inputstr : Ang string na iko-convert.

Halimbawa:


    'Ibinabalik ang string na "abc\n\tdef\\n"
    MsgBox SF_String.Escape("abc" & Chr(10) & Chr(9) & "def\n")
  

ExpandTabs

Pinapalitan ang mga character ng Tab Chr(9) sa pamamagitan ng mga space character upang gayahin ang gawi ng mga tab stop.

Kung may nakitang line break, magsisimula ang isang bagong linya at ire-reset ang character counter.

Syntax:

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

Mga Parameter:

inputstr : Ang string na palawakin

tabsize : Ginagamit ang parameter na ito upang matukoy ang mga paghinto ng Tab gamit ang formula: TabSize + 1, 2 * TabSize + 1 , ... N * TabSize + 1 (Default = 8)

Halimbawa:


    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

Pinapalitan ang lahat ng hindi napi-print na character sa input string ng isang ibinigay na character.

Syntax:

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

Mga Parameter:

inputstr : Ang string na hahanapin

pinalitan ng : Zero, isa o higit pang character na papalit sa lahat ng hindi napi-print na character inputstr (Default = "")

Halimbawa:


    Dim LF : LF = Chr(10)
    Dim myText as String
    myText = "àén ΣlPµ" & LF & " Русский" & "\n"
    MsgBox SF_String.FilterNotPrintable(myText)
    ' "àén ΣlPµ Русский\n"
  

FindRegex

Nakahanap sa isang string ng isang substring na tumutugma sa isang ibinigay na regular na expression.

Syntax:

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

Mga Parameter:

inputstr : Ang string na hahanapin

regex : Ang regular na expression

simulan : Ang posisyon sa string kung saan magsisimula ang paghahanap. Ang parameter na ito ay ipinasa sa pamamagitan ng sanggunian, kaya pagkatapos ng pagpapatupad ang halaga ng simulan ituturo ang unang character ng nahanap na substring. Kung walang nakitang katugmang substring, simulan itatakda sa 0.

casesensitive : Ang paghahanap ay maaaring case sensitive o hindi (Default = Mali ).

pasulong : Tinutukoy ang direksyon ng paghahanap. Kung totoo , sumusulong ang paghahanap. Kung Mali ang paghahanap ay gumagalaw pabalik (Default = totoo )

Sa unang pag-ulit, kung pasulong = Totoo , pagkatapos simulan dapat ay katumbas ng 1, samantalang kung pasulong = Mali pagkatapos simulan dapat katumbas ng Len(inputstr)

Halimbawa:


    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

Sa halimbawa sa itaas, ang bagong halaga ng lSimulan ay maaaring gamitin upang patuloy na maghanap sa parehong input string sa pamamagitan ng pagtatakda ng Magsimula parameter sa lStart + Len(resulta) sa susunod na pag-ulit.


HashStr

Ginagamit ang mga hash function sa loob ng ilang cryptographic algorithm, sa mga digital na lagda, mga code sa pagpapatunay ng mensahe, manipulation detection, fingerprints, checksums (message integrity check), hash tables, password storage at marami pang iba.

Ang HashStr Ibinabalik ng method ang resulta ng hash function na inilapat sa isang partikular na string at gamit ang isang tinukoy na algorithm, bilang isang string ng lowercase na hexadecimal digit.

Ang mga hash algorithm na sinusuportahan ay: MD5 , SHA1 , SHA224 , SHA256 , SHA384 at SHA512 .

Syntax:

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

Mga Parameter:

inputstr : Ang string sa hash. Ito ay ipinapalagay na naka-encode sa UTF-8. Isasaalang-alang ng hashing algorithm ang string bilang isang stream ng mga byte.

algorithm : Isa sa mga sinusuportahang algorithm na nakalista sa itaas, na ipinasa bilang isang string.

Halimbawa:

Sa Basic

    MsgBox SF_String.HashStr("œ∑¡™£¢∞§¶•ªº–≠œ∑´®†¥¨ˆøπ‘åß∂ƒ©˙∆˚¬", "MD5")
    ' c740ccc2e201df4b2e2b4aa086f35d8a
  
Sa Python

    svc = CreateScriptService("String")
    bas = CreateScriptService("Basic")
    a_string = "œ∑¡™£¢∞§¶•ªº–≠œ∑´®†¥¨ˆøπ‘åß∂ƒ©˙∆˚¬"
    hash_value = svc.HashStr(a_string, "MD5")
    bas.MsgBox(hash_value)
    # c740ccc2e201df4b2e2b4aa086f35d8a
  

HtmlEncode

Ine-encode ang input string sa mga HTML na character code, na pinapalitan ang mga espesyal na character ng kanilang at mga katapat.

Halimbawa, ang karakter e ay papalitan ng e o katumbas na numerical HTML code.

Syntax:

svc.HtmlEncode(inputstr: str): str

Mga Parameter:

inputstr : Ang string na ie-encode.

Halimbawa:


    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

Nagbabalik totoo kung ang input string ay isang wastong petsa ayon sa isang tinukoy na format ng petsa.

Syntax:

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

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali

dateformat : Ang format ng petsa, bilang isang string. Maaari itong maging "YYYY-MM-DD" (default), "DD-MM-YYYY" o "MM-DD-YYYY"

Ang gitling (-) ay maaaring mapalitan ng isang tuldok (.), isang slash (/) o isang puwang.

Kung hindi wasto ang format, babalik ang paraan Mali .

Halimbawa:

Sa Basic

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

Sinusuri ng pamamaraang ito ang format ng input string nang hindi nagsasagawa ng anumang mga pagsusuring partikular sa kalendaryo. Kaya hindi nito sinusubok ang input string para sa mga leap year o buwan na may 30 o 31 araw. Para diyan, sumangguni sa IsDate built-in na function .


Ang halimbawa sa ibaba ay nagpapakita ng pagkakaiba sa pagitan ng mga pamamaraan IsADate (ScriptForge) at ang IsDate (built-in) na function.


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

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

IsAlpha

Nagbabalik totoo kung ang lahat ng mga character sa string ay alphabetic.

Ang mga alpabetikong karakter ay ang mga karakter na tinukoy sa Unicode Character Database bilang liham .

Syntax:

svc.IsAlpha(inputstr: str): bool

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

Halimbawa:


    MsgBox SF_String.IsAlpha("àénΣlPµ") ' True
    MsgBox SF_String.IsAlpha("myVar3") ' False
  

IsAlphaNum

Nagbabalik totoo kung ang lahat ng mga character sa string ay alphabetic, mga digit o "_" (underscore). Ang unang character ay hindi dapat isang digit.

Syntax:

svc.IsAlphaNum(inputstr: str): bool

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

Halimbawa:


    MsgBox SF_String.IsAlphaNum("_ABC_123456_abcàénΣlPµ") ' True
    MsgBox SF_String.IsAlphaNum("123ABC") ' False
  

IsAscii

Nagbabalik totoo kung ang lahat ng mga character sa string ay mga ASCII character.

Syntax:

svc.IsAscii(inputstr: str): bool

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

Halimbawa:


    MsgBox SF_String.IsAscii("a%?,25") ' True
    MsgBox SF_String.IsAscii("abcàénΣlPµ") ' False
  

IsDigit

Nagbabalik totoo kung ang lahat ng mga character sa string ay mga digit.

Syntax:

svc.IsDigit(inputstr: str): bool

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

Halimbawa:


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

IsEmail

Nagbabalik totoo kung ang string ay isang wastong email address.

Syntax:

svc.IsEmail(inputstr: str): bool

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

Halimbawa:

Sa 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
  
Sa 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

Nagbabalik totoo kung ang string ay isang wastong filename sa isang ibinigay na operating system.

Syntax:

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

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

osname : Ang pangalan ng operating system, bilang isang string. Maaari itong maging "WINDOWS", "LINUX", "MACOSX" o "SOLARIS".

Ang default na halaga ay ang kasalukuyang operating system kung saan tumatakbo ang script.

Halimbawa:

Sa 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
  
Sa 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

Nagbabalik totoo kung ang lahat ng mga character sa string ay hexadecimal digit.

Syntax:

svc.IsHexDigit(inputstr: str): bool

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

Ang mga hexadecimal na digit ay maaaring may prefix na "0x" o "&H".

Halimbawa:


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

IsIBAN

Nagbabalik totoo kung ang string ay wastong International Bank Account Number (IBAN). Ang paghahambing ay hindi case-sensitive.

Syntax:

svc.IsIBAN(inputstr: str): bool

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

Ibinalik na halaga:

totoo kung ang string ay naglalaman ng wastong numero ng IBAN.

Halimbawa:


    ' 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

Nagbabalik totoo kung ang string ay isang wastong IP(v4) address.

Syntax:

svc.IsIPv4(inputstr: str): bool

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

Halimbawa:

Sa 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
  
Sa 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

Nagbabalik totoo kung ang buong input string ay tumutugma sa isang ibinigay na pattern na naglalaman ng mga wildcard.

Syntax:

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

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

pattern : Ang pattern bilang isang string. Ang mga wildcard ay:

casesensitive : Ang paghahanap ay maaaring case sensitive o hindi (Default = Mali ).

Halimbawa:

Sa 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
  
Sa 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

Nagbabalik totoo kung ang lahat ng mga character sa string ay nasa lowercase. Binabalewala ang mga hindi alphabetic na character.

Syntax:

svc.IsLower(inputstr: str): bool

Mga Parameter:

InputStr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

Halimbawa:


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

IsPrintable

Nagbabalik totoo kung ang lahat ng mga character sa string ay napi-print.

Syntax:

svc.IsPrintable(inputstr: str): bool

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

Halimbawa:


    MsgBox SF_String.IsPrintable("àén ΣlPµ Русский") ' True
    MsgBox SF_String.IsPrintable("First line." & Chr(10) & "Second Line.") ' False
  

IsRegex

Nagbabalik totoo kung ang buong input string ay tumutugma sa isang naibigay na regular na expression.

Syntax:

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

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

regex : Ang regular na expression. Kung walang laman, babalik ang pamamaraan Mali .

casesensitive : Ang paghahanap ay maaaring case sensitive o hindi (Default = Mali ).

Halimbawa:


        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

Nagbabalik totoo kung ang input string ay isang wastong pangalan ng Calc sheet.

Syntax:

svc.IsSheetName(inputstr: str): bool

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

Halimbawa:

Sa Basic

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

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

Ang pangalan ng sheet ay hindi dapat maglaman ng mga character [ ] * ? : / \ o ang karakter ' (apostrophe) bilang una o huling karakter.


IsTitle

Nagbabalik totoo kung ang unang character ng bawat salita ay nasa uppercase at ang iba pang character ay nasa lowercase.

Syntax:

svc.IsTitle(inputstr: str): bool

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

Halimbawa:


    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

Nagbabalik totoo kung ang lahat ng mga character sa string ay nasa uppercase. Binabalewala ang mga hindi alphabetic na character.

Syntax:

svc.IsUpper(inputstr: str): bool

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

Halimbawa:


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

IsUrl

Nagbabalik totoo kung ang string ay isang wastong ganap na URL (Uniform Resource Locator) na address. Tanging ang http, https at ftp protocol ang sinusuportahan.

Syntax:

svc.IsUrl(inputstr: str): bool

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

Halimbawa:

Sa Basic

    MsgBox SF_String.IsUrl("http://foo.bar/?q=Test%20URL-encoded%20stuff") ' True
    MsgBox SF_String.IsUrl("www.somesite.org") ' False
  
Sa 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

Nagbabalik totoo kung ang lahat ng mga character sa string ay mga whitespace

Syntax:

svc.IsWhitespace(inputstr: str): bool

Mga Parameter:

inputstr : Ang string na susuriin. Kung walang laman, babalik ang pamamaraan Mali .

Halimbawa:


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

JustifyCenter

Ibinabalik ang input string center-justified.

Ang mga nangunguna at sumusunod na puting puwang ay hinuhubaran at ang natitirang mga character ay nakumpleto pakaliwa at kanan hanggang sa isang tinukoy na kabuuan haba kasama ang karakter padding .

Syntax:

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

Mga Parameter:

inputstr : Ang string upang maging center-justified. Kung walang laman, ang pamamaraan ay nagbabalik ng walang laman na string.

haba : Ang haba ng resultang string (default = ang haba ng input string).

Kung ang tinukoy na haba ay mas maikli kaysa sa center-justified na input string, ang ibinalik na string ay puputulin.

padding : Ang solong character na gagamitin bilang padding (default = ang ASCII space " ").

Halimbawa:


    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

Ibinabalik ang input string na left-justified.

Ang mga nangungunang puting puwang ay tinanggal at ang natitirang mga character ay kinukumpleto sa kanan hanggang sa isang tinukoy na kabuuan haba kasama ang karakter padding .

Syntax:

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

Mga Parameter:

inputstr : Ang string na dapat iwanang katwiran. Kung walang laman, ang pamamaraan ay nagbabalik ng walang laman na string.

haba : Ang haba ng resultang string (default = ang haba ng input string).

Kung ang tinukoy na haba ay mas maikli kaysa sa left-justified input string, ang ibinalik na string ay puputulin.

padding : Ang solong character na gagamitin bilang padding (default = ang ASCII space " ").

Halimbawa:


    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

Ibinabalik ang input string na right-justified.

Ang mga nangungunang puting espasyo ay tinanggal at ang natitirang mga character ay nakumpleto sa kaliwa hanggang sa isang tinukoy na kabuuan haba kasama ang karakter padding .

Syntax:

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

Mga Parameter:

inputstr : Ang string na dapat bigyang-katwiran. Kung walang laman, ang pamamaraan ay nagbabalik ng walang laman na string.

haba : Ang haba ng resultang string (default = ang haba ng input string).

Kung ang tinukoy na haba ay mas maikli kaysa sa right-justified input string, ang ibinalik na string ay puputulin.

padding : Ang solong character na gagamitin bilang padding (default = ang ASCII space " ").

Halimbawa:


    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

Ibinabalik ang input string na nakapaloob sa single o double quotes. Ang mga kasalukuyang quote ay hindi nababago, kabilang ang nangunguna at/o sumusunod na mga quote.

Syntax:

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

Mga Parameter:

inputstr : Ang string na sipiin.

quotechar : Alinman sa single (') o double (") quote (default).

Halimbawa:


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

Maaaring maging kapaki-pakinabang ang pamamaraang ito habang naghahanda ng string field na iimbak sa isang tulad-csv na file, na nangangailangan na ang mga halaga ng teksto ay may kasamang isa o dobleng quote.


ReplaceChar

Pinapalitan ang lahat ng paglitaw ng mga character na tinukoy sa dati parameter ng kaukulang mga character na tinukoy sa Pagkatapos .

Kung ang haba ng dati ay mas malaki kaysa sa haba ng Pagkatapos , ang mga natitirang character sa dati ay pinalitan ng huling karakter sa Pagkatapos .

Syntax:

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

Mga Parameter:

inputstr : Ang input string kung saan magaganap ang mga pagpapalit.

dati : Isang string na may mga character na hahanapin sa input string para sa kapalit.

pagkatapos : Isang string na may mga bagong character na papalit sa mga tinukoy sa dati .

Halimbawa:


    ' Pinapalitan ang mga may accent na character
    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"
  

Ang SF_String Ang serbisyo ay nagbibigay ng mga kapaki-pakinabang na pampublikong constant para sa Latin character set, tulad ng ipinapakita sa halimbawa sa ibaba:


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

ReplaceRegex

Pinapalitan ang lahat ng paglitaw ng isang naibigay na regular na expression ng isang bagong string.

Syntax:

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

Mga Parameter:

inputstr : Ang input string kung saan magaganap ang mga pagpapalit.

regex : Ang regular na expression.

newstr : Ang pagpapalit ng string.

casesensitive : Ang paghahanap ay maaaring case sensitive o hindi (Default = Mali ).

Halimbawa:


    MsgBox SF_String.ReplaceRegex("Lorem ipsum dolor sit amet, consectetur adipiscing elit.", "[a-z]", "x", CaseSensitive := True)
    ' "Lxxxx xxxxx xxxxx xxx xxxx, xxxxxxxxxxx xxxxxxxxx xxxx." (bawat maliit na titik ay pinapalitan ng "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." (bawat salita ay pinapalitan ng "x")
  

ReplaceStr

Pinapalitan sa isang string ang ilan o lahat ng paglitaw ng isang hanay ng mga string ng isang hanay ng mga bagong string.

Syntax:

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

Mga Parameter:

inputstr : Ang input string kung saan magaganap ang mga pagpapalit.

oldstr : Isang solong string o hanay ng mga string. Binabalewala ang mga zero-length na string.

newstr : Ang pagpapalit ng string o ang hanay ng pagpapalit ng mga string.

Kung oldstr ay isang array, ang bawat paglitaw ng alinman sa mga item sa oldstr ay pinalitan ng newstr .

Kung oldstr at newstr ay mga arrays, ang mga pagpapalit ay nangyayari nang paisa-isa hanggang sa UBound(newstr) .

Kung oldstr ay may mas maraming entry kaysa newstr , pagkatapos ay ang mga natitirang elemento sa oldstr ay pinalitan ng huling elemento sa newstr .

mga pangyayari : Ang maximum na bilang ng mga kapalit. Ang default na halaga ay 0, ibig sabihin, ang lahat ng mga pangyayari ay papalitan.

kailan oldstr ay isang array, ang pangyayari Ang parameter ay hiwalay na kinakalkula para sa bawat item sa array.

casesensitive : Ang paghahanap ay maaaring case sensitive o hindi (Default = Mali ).

Halimbawa:


    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

Nagbabalik ng string na may nababasang representasyon ng argumento, pinutol sa isang partikular na haba. Ito ay pangunahing kapaki-pakinabang para sa mga layunin ng pag-debug o pag-log.

Kung ang anumang halaga parameter ay isang bagay, ito ay kalakip ng mga square bracket na "[" at "]".

Sa mga string, ang mga tab at line break ay pinapalitan ng \t, \n o \r.

Kung ang huling haba ay lumampas sa maxlength parameter, ang huling bahagi ng string ay pinapalitan ng " ... (N)" kung saan ang N ay ang kabuuang haba ng orihinal na string bago ang pagputol.

Syntax:

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

Mga Parameter:

anumang halaga : Ang halaga ng input na kakatawanin. Maaari itong maging anumang halaga, tulad ng string, array, Basic object, UNO object, atbp.

maxlength : Ang maximum na haba ng resultang string. Ang default na halaga ay 0, ibig sabihin ay walang limitasyon sa haba ng resultang representasyon.

Halimbawa:


    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]"
  

Tandaan na ang representasyon ng mga uri ng data tulad ng Arrays at ScriptForge.Diksyunaryo Kasama sa mga instance ng object ang parehong uri ng data at ang kanilang mga halaga:


    ' Isang halimbawa na may Basic na built-in na Array
    MsgBox SF_String.Represent(Array(1, 2, "Text" & Chr(9) & "here"))
    ' "[ARRAY] (0:2) (1, 2, Text\there)"
    ' Isang halimbawa na may ScriptForge Array
    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)"
    ' Isang halimbawa na may ScriptForge Dictionary
    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

Ibinabalik ang input string sa reverse order.

Ang pamamaraang ito ay katumbas ng built-in StrReverse Pangunahing pag-andar .

note

Upang gamitin ang StrReverse function, ang pahayag Opsyon VBASupport 1 kailangang nasa modyul.


Syntax:

svc.Reverse(inputstr: str): str

Mga Parameter:

inputstr : Ang string na ibabalik.

Halimbawa:


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

SplitLines

Nagbabalik ng zero-based na array ng mga string na may mga linya sa input string. Ang bawat item sa array ay nakukuha sa pamamagitan ng paghahati ng input string sa mga newline na character.

Syntax:

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

Mga Parameter:

inputstr : Ang string na hahatiin.

keepbreaks : Kailan totoo , ang mga line break ay pinapanatili sa output array (default = Mali ).

Halimbawa:


    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

Hinahati ang isang string sa isang hanay ng mga elemento gamit ang isang tinukoy na delimiter.

Kung ang isang naka-quote na substring ay naglalaman ng isang delimiter, ito ay hindi papansinin. Ito ay kapaki-pakinabang kapag nag-parse ng mga record na tulad ng CSV na naglalaman ng mga naka-quote na string.

Syntax:

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

Mga Parameter:

inputstr : Ang string na hahatiin.

delimiter : Isang string ng isa o higit pang mga character na gagamitin bilang delimiter. Ang default na delimiter ay ang ASCII space " " character.

mga pangyayari : Ang maximum na bilang ng mga substring na ibabalik. Ang default na halaga ay 0, ibig sabihin ay walang limitasyon sa bilang ng mga ibinalik na string.

quotechar : Alinman sa single (') o double (") quote.

Halimbawa:

Sa 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""", "")
  
Sa 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

Mag-ingat sa mga pagkakaiba sa pagitan ng Basic at Python kapag kumakatawan sa mga string. Halimbawa, sa Pangunahing dalawang "" na character sa loob ng isang string ay binibigyang-kahulugan bilang iisang " character. Sa Python, ang mga string na nakapaloob na may mga solong quote ay maaaring maglaman ng mga " character nang hindi kinakailangang doblehin ang mga ito.


StartsWith

Nagbabalik totoo kung ang mga unang character ng isang string ay magkapareho sa isang ibinigay na substring.

Nagbabalik ang pamamaraang ito Mali kung alinman sa input string o substring ay may haba = 0 o kapag ang substring ay mas mahaba kaysa sa input string.

Syntax:

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

Mga Parameter:

inputstr : Ang string na susuriin.

substring : Ang substring na hahanapin sa simula ng inputstr .

casesensitive : Ang paghahanap ay maaaring case sensitive o hindi (Default = Mali ).

Halimbawa:


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

TrimExt

Ibinabalik ang input string nang wala ang mga nangunguna at sumusunod na mga whitespace.

Syntax:

svc.TrimExt(inputstr: str): str

Mga Parameter:

inputstr : Ang string upang putulin.

Halimbawa:


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

Unescape

Kino-convert ang anumang escaped sequence (\\, \n, \r, \t) sa input string sa kanilang katumbas na ASCII character.

Syntax:

svc.Unescape(inputstr: str): str

Mga Parameter:

inputstr : Ang string na iko-convert.

Halimbawa:


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

Unquote

Tinatanggal ang isa o dobleng quote na nakapaloob sa input string.

Ito ay kapaki-pakinabang kapag nag-parse ng mga record na tulad ng CSV na naglalaman ng mga naka-quote na string.

Syntax:

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

Mga Parameter:

inputstr : Ang string na i-unquote.

quotechar : Alinman sa single (') o double (") quote (default).

Halimbawa:


    Dim s as String
    ' s = "Ilang teksto" (nang walang kasamang mga panipi)
    s = SF_String.Unquote("""Some text""")
    ' Ang string sa ibaba ay walang kalakip na mga panipi, kaya nananatili itong hindi nagbabago
    ' s = "Ilang teksto" (hindi nabago)
    s = SF_String.Unquote("Some text")
    ' Ang mga quote sa loob ng string ay hindi inaalis
    ' s = "Ang ""totoo"" na kahulugan" (hindi nagbabago)
    s = SF_String.Unquote("The ""true"" meaning")
  

Wrap

Kino-convert ang input string sa isang array ng mga substrings upang ang bawat item sa array ay may hindi hihigit sa isang naibigay na bilang ng mga character.

Sa pagsasagawa, ang pamamaraang ito ay nagbabalik ng zero-based na hanay ng mga linya ng output, na walang mga bagong linya sa dulo, maliban sa mga dati nang line-break.

Ang mga tab ay pinalawak gamit ang parehong pamamaraan na isinagawa ng ExpandTabs paraan.

Ang mga simbolikong line break ay pinapalitan ng kanilang katumbas na mga ASCII na character.

Kung ang nakabalot na output ay walang nilalaman, ang ibinalik na array ay walang laman.

Syntax:

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

Mga Parameter:

inputstr : Ang string na ibalot.

lapad : Ang maximum na bilang ng mga character sa bawat linya (Default = 70).

tabsize : Bago i-wrap ang text, ang umiiral na TAB Chr(9) ang mga character ay pinapalitan ng mga puwang. Ang argumento tabsize tumutukoy sa mga hinto ng TAB sa TabSize + 1, 2 * TabSize + 1 , ... N * TabSize + 1 (Default = 8).

Halimbawa:

Sa 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...")
  
Sa 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

Lahat ScriptForge Ang mga pangunahing gawain o identifier na may prefix na may underscore na character na "_" ay nakalaan para sa panloob na paggamit. Ang mga ito ay hindi nilalayong gamitin sa Basic macros o Python script.


Mangyaring suportahan kami!