1-ში მოძებნეთ ხაზის ბოლოს სიმბოლო. ახალი ფუნქციები სტრინგებთან მუშაობისთვის. სიმებიანი მუშაობის მაგალითები

1C შეკითხვებში სტრინგებთან მუშაობის რამდენიმე მექანიზმი არსებობს. პირველ რიგში, ხაზების დამატება შეიძლება. მეორეც, შეგიძლიათ აიღოთ ქვესტრიქონი სტრიქონიდან. მესამე, სტრიქონების შედარება შესაძლებელია, მათ შორის ნიმუშის მიხედვით. ეს არის ალბათ ყველაფერი, რაც შეიძლება გაკეთდეს სიმებით.

სიმებიანი დამატება

მოთხოვნაში რიგების დასამატებლად გამოიყენება "+" ოპერაცია. თქვენ შეგიძლიათ დაამატოთ მხოლოდ შეზღუდული სიგრძის სტრიქონები.

აირჩიეთ "სახელი:"

ქვესტრიქონის ფუნქცია

SUBSTRING(<Строка>, <НачальнаяПозиция>, <Длина>)

Environment() ფუნქციის ანალოგი ობიექტის მოდელიდან. Substring() ფუნქცია შეიძლება გამოყენებულ იქნას სტრიქონების მონაცემებზე და საშუალებას გაძლევთ აირჩიოთ ფრაგმენტი <Строки> , დაწყებული სიმბოლოს ნომრით <НачальнаяПозиция> (სტრიქონის სიმბოლოები დანომრილია 1-დან) და სიგრძე <Длина> პერსონაჟები. ფუნქციის გამოთვლის შედეგს აქვს ცვლადი სიგრძის სტრიქონის ტიპი და სიგრძე ჩაითვლება შეუზღუდავად, თუ <Строка> აქვს შეუზღუდავი სიგრძე და პარამეტრი <Длина> არ არის მუდმივი ან 1024-ზე მეტი.

თუ სტრიქონის სიგრძე ნაკლებია, ვიდრე მითითებულია მეორე პარამეტრში, მაშინ ფუნქცია დააბრუნებს ცარიელ სტრიქონს.

ყურადღება! SUBSTRING() ფუნქციის გამოყენება შეუზღუდავი სიგრძის სტრიქონების შეზღუდული სიგრძის სტრიქონებში გადასაყვანად არ არის რეკომენდებული. ამის ნაცვლად, უმჯობესია გამოიყენოთ cast ოპერატორი EXPRESS().

ფუნქცია მსგავსი

თუ ჩვენ უნდა დავრწმუნდეთ, რომ სიმებიანი ატრიბუტი აკმაყოფილებს გარკვეულ კრიტერიუმებს, ჩვენ ვადარებთ მას:

SELECT Counterparties დასახელება AS სვეტი 1 FROM Counterparties AS Counterparties.

მაგრამ რა მოხდება, თუ უფრო დახვეწილი შედარება გჭირდებათ? არა მხოლოდ თანასწორობა ან უთანასწორობა, არამედ გარკვეული ნიმუშის მსგავსება? ზუსტად ამისთვის შეიქმნა SIMILAR ფუნქცია.

LIKE - ოპერატორი, რომელიც ამოწმებს სტრიქონს ნიმუშთან მსგავსებაზე. LIKE-ის ანალოგი SQL-ში.

SIMILAR ოპერატორი საშუალებას გაძლევთ შეადაროთ მის მარცხნივ მითითებული გამოხატვის მნიშვნელობა მარჯვნივ მითითებულ შაბლონის სტრიქონთან. გამოხატვის მნიშვნელობა უნდა იყოს string ტიპის. თუ გამოხატვის მნიშვნელობა ემთხვევა შაბლონს, ოპერატორის შედეგი იქნება TRUE, წინააღმდეგ შემთხვევაში იქნება FALSE.

შაბლონის სტრიქონში შემდეგი სიმბოლოები არის სერვისის სიმბოლოები და აქვთ სტრიქონის სიმბოლოსგან განსხვავებული მნიშვნელობა:

  • % (პროცენტი): თანმიმდევრობა, რომელიც შეიცავს ნებისმიერი რაოდენობის თვითნებურ სიმბოლოებს;
  • _ (ხაზგასმით): ერთი თვითნებური სიმბოლო;
  • [...] (ერთი ან მეტი სიმბოლო კვადრატულ ფრჩხილებში): ნებისმიერი სიმბოლო, რომელიც ჩამოთვლილია კვადრატულ ფრჩხილებში. ჩამოთვლა შეიძლება შეიცავდეს დიაპაზონებს, მაგალითად a-z, რაც ნიშნავს თვითნებურ სიმბოლოს, რომელიც შედის დიაპაზონში, დიაპაზონის ბოლოების ჩათვლით;
  • [^...] (კვადრატულ ფრჩხილებში უარყოფის ნიშანი, რომელსაც მოჰყვება ერთი ან მეტი სიმბოლო): ნებისმიერი ცალკეული სიმბოლო, გარდა იმ სიმბოლოებისა, რომლებიც ჩამოთვლილია უარყოფის ნიშნის შემდეგ.

ნებისმიერი სხვა სიმბოლო ნიშნავს თავის თავს და არ ატარებს რაიმე დამატებით დატვირთვას. თუ ჩამოთვლილთაგან ერთ-ერთი სიმბოლო უნდა დაიწეროს როგორც თავად, მაშინ მას წინ უნდა უძღოდეს<Спецсимвол>. მე თვითონ<Спецсимвол>(ნებისმიერი შესაფერისი სიმბოლო) განისაზღვრება იმავე განცხადებაში SPECIAL CHARACTER საკვანძო სიტყვის შემდეგ.

ნაწილი 1. მეთოდები (26).

1.1. ძირითადი მეთოდები (10). დამოუკიდებელი, აგებულია საკუთარ მარტივ ალგორითმებზე.

Page_Add() (მარჯვნივ-მარცხნივ დამატება მითითებული სიმბოლოებით).

Page_Inverse () (ინვერსია - სიმბოლოები მარჯვნიდან მარცხნივ).

Page_Codes() (სიმბოლოების კოდები ""-ის მეშვეობით და მასივი კოდებით)

Page_Characters() (კოდების სტრიქონი გამოყოფილი ""-ით ან მასივიდან კოდებით)

Page_ReplaceSymbols() (ზოგიერთი სიმბოლო სხვებით ჩანაცვლება).

String_FromArray() (სტრიქონი გამყოფით გამოყოფილი ფრაგმენტების მასივიდან)

Page_FindIn() (მოძებნეთ ქვესტრიქონი (მარჯვნივ) მითითებული მოვლენის ნომრით).

Page_FindGr() (მოძებნეთ სიმბოლოთა ჯგუფი, რომელიც შედის მითითებულ სიმბოლოთა ნაკრებში)

Page_FindNumber() (მოძებნეთ რიცხვი, მათ შორის მარჯვნივ მითითებული შემთხვევის ნომრით)

Page_Interpret() (მაივში, დადგენილი სინტაქსის მიხედვით)

1.2. წარმოებული მეთოდები (12). სინამდვილეში, ეს არის ოთხი განზოგადებული ალგორითმის მეთოდის გამოყენება (იხ. ნაწილი 2)

Page_Number() (სტრიქონის დასაწყისიდან და ბოლოდან, ნუ შეგეშინდებათ არაციფრული სიმბოლოების.

Page_Find() (მოძებნეთ ქვესტრიქონი (მათ შორის, არ არის მგრძნობიარე და მარჯვნივ) მითითებული მოვლენის ნომრით).

Page_Replace() (ძებნა (მათ შორის, რეგისტრირებული და მარჯვენა ხელით) და შეცვალეთ დელიმიტერის ქვესტრიქონები).

Str_Piece() (სტრიქონის ნაჭერი დელიმიტერის მითითებულ მოვლენებს შორის (მარცხნივ ან მარჯვნივ)).

Page_ReplacePiece() (ანაცვლებს „ნაწილს“ წყაროს სტრიქონში მითითებული სტრიქონით).

Page_ВArray() (გამყოფის მითითებულ მოვლენებს შორის (მათ შორის მარჯვნივ და ქეისის გარეშე).

Page_TransferBySyllables() (დაყოფილია ქვესტრიქონებად "Hardly", დეფისით).

Page_TransferByWords() (დაყოფილია ქვესტრიქონებად „რბილად“)

Page_Cut() ("გაჭრა" მითითებული სიგრძის ქვესტრიქონებად)

Str_Shorten() (შეცვალეთ "შემოკლებული" სიმბოლოების მარცხენა ჯგუფი "შემცვლელი სტრიქონით"

Page_Abbreviation() (შეცვალეთ "შემცირებული" სიმბოლოების მარჯვენა ჯგუფი "ჩანაცვლების სტრიქონით"

Str_ShortenS() (შეცვალეთ „შემოკლებული“ სიმბოლოების ჯგუფის შუაში „შემცვლელი სტრიქონი“

Page_Extend (გაფართოება მითითებულ სიგრძემდე მითითებული სიმბოლოების რაოდენობის გაზრდით)

1.3. დეტალური მეთოდები (3). ხაზის "განკვეთა" მაგიდაზე გადატანით დეტალური ინფორმაციით.

Page_vTableIn() (ცხრილში ჩადგმული დელიმიტერების სისტემის მიხედვით).

Page_vTableGr (მაგიდაზე მრავალ დონის ფილტრის მიხედვით).

Page_inTableNumbers (ცხრილში რიცხვებითა და ფრაგმენტებით მათ შორის).

ნაწილი 2. განზოგადებული მეთოდები-ალგორიმები (3).

Page_Occurrence() (მეთოდები "Find" და "Replace").

Page_Fragments() (მეთოდები "Piece", "ReplacePiece", "InArray", "inTableIn").

Page_Abcr() (მეთოდები "AbcrL", "AbcrP", "AbcrS", "Expand".

Page_Split() (მეთოდები "გადაადგილება სილაბებით", "გადაადგილება სიტყვებით", "გაჭრა").

ნაწილი 3. უნივერსალური ფუნქცია.

ეს არის ერთგვარი პირობითი პროგრამირების ინტერფეისი, რომელიც საშუალებას იძლევა

გამოიყენეთ რამდენიმე მეთოდი სტრიქონზე ერთდროულად. განხორციელდა როგორც

ფუნქციები შვიდი პარამეტრით ("დემო" აგებულია ამ ფუნქციაზე):

გვერდი_(მეთოდები, ქვემეთოდები, შეყვანა, პარამი1, პარამი2, სიგრძე_ნომერი_პოზიცია, დამატებითი გამომავალი)

პარამეტრები:

- "მეთოდები" - რამდენიმე "კომბინირებული" და (ან) ერთი "ექსკლუზიური" მეთოდი

(ერთ სიმბოლოს კოდები ან სახელები, შესაძლებელია ","-ის საშუალებით)

- "ქვემეთოდები" - რამდენიმე "კომბინირებული" და (ან) "ექსკლუზიური" ვარიანტი

„ექსკლუზიური“ მეთოდი (ერთსიმბოლოიანი კოდები ან სახელები);

- „შეყვანა“ - სტრიქონი, ან მასივი ან მნიშვნელობების ცხრილი;

- "Param1" - საძიებო სტრიქონი, ჩანაცვლებები, გამყოფები, ფილტრები;

- "Param2" - ჩანაცვლების სტრიქონი ან სიმბოლოები;

- „სიგრძე_ნომერი_პოზიცია“ - რიცხვი, რიცხვები გამყოფის ან მასივის მეშვეობით რიცხვებით;

- „დამატებითი გამომავალი“ - რიცხვი ან სტრიქონი ან მასივი ან მნიშვნელობების ცხრილი;

ქვემეთოდების სახელები და/ან ერთსიმბოლოიანი კოდები, აგრეთვე ნომრები

(სიგრძე_ნომერი_პოზიცია) ნებისმიერ შემთხვევაში შეიძლება იყოს და განცალკევებული

რომელიმე ქვემოთ ჩამოთვლილი დელიმიტერებიდან: ” :;”.

ნაწილი 4. რამდენიმე მაგალითი.

There areNumbersInLine=(Str_FindNumber(InLine)<>განუსაზღვრელი);

ხაზში არის რიცხვები = (String_FindGr(Inline,"+0123456789")>0);

არის ლათინური = (Str_FindGr(InStr, Str_Interpret("lL"))>0);

არის მითითებული ნიშნები = (Str_NfindGr(VxStr, "+to rogYu.0p9")>0);

IsNotPrinted=(Str_FindGr(InxStr, Line_Interpret("-l-L-r-R-P-Z-C"))>0);

ნაწილი 5. დასკვნა.

სადაც შესაძლებელი იყო, ხაზის გასწვრივ ერთი გადასასვლელით შევასრულე. მეორე გადასასვლელი ჩვეულებრივ ფრაგმენტებად არის. მე არ გამომიყენებია ჩაშენებული ფუნქცია StrNumberOccurrences().

გამოიყენება ჩაშენებული ფუნქციები: Left(), Right(), Middle(), StrLength()

- (პოზიციონირება და ხაზის ნაწილის მიღება უნდა იყოს „სწრაფი“).

გამარჯობა ყველას
დღეს მთხოვეს, განხორციელების დოკუმენტის დაბეჭდვისას დოკუმენტის პრეფიქსი არ გამომეჩინა, პრობლემა შემდეგნაირად მოვაგვარე.

StrReplace(Number, Lev(Number, 3), "" );

როცა სინტაქსის ასისტენტს შევხედე, იმდენად მომეწონა, რომ მინდოდა დამეწერა სტრინგებთან მუშაობა 1C: Enterprise-ში.

სტრიქონი 1C-ში მიუთითებს მონაცემთა პრიმიტიულ ტიპზე.

თუ გადავხედავთ 1C დახმარებას, ჩვენ ვნახავთ String ტიპის შემდეგ აღწერას:
ღირებულებები ამ ტიპისშეიცავდეს თვითნებური სიგრძის Unicode სტრიქონს.
თუ იყენებთ საკუთარ სიტყვებს სიმების შესახებ, ის იმუშავებს. სტრიქონი არის მუდმივი, რომელიც შედგება სხვადასხვა სიმბოლოებისგან, ყოველთვის გარშემორტყმული ციტატებით.

ხაზის დაყენება
სალამი = "გამარჯობა მგზავრო";

მრავალხაზოვანი სტრიქონები ტიპიური კონფიგურაციებიყველაზე ხშირად შექმნილი ვერტიკალური გამყოფის "|" გამოყენებით:
სტრიქონი = "მრავალხაზოვანი
|სტრიქონი
|ჩაწერა
|ტექსტი“;

ციტატა სტრიქონში მითითებულია ორმაგი ბრჭყალებით.
String = ""ტექსტი ბრჭყალებში"";

სტრიქონებზე ბევრი ოპერაციაა (სტრიქონის შიგნით ძებნა, პირველის დადგენა და ა.შ.), ჯობია სინტაქსის ასისტენტს გადახედოთ.
სინტაქსის დამხმარე - ჩაშენებული ენის ზოგადი აღწერა -> ჩაშენებული ფუნქციები -> სტრიქონებთან მუშაობის ფუნქციები.

სტრინგებთან მუშაობის ფუნქციები

აქ მოცემულია სტრინგებთან მუშაობის ფუნქციების მოკლე მიმოხილვა:

VReg(<Строка>) — ფუნქცია გარდაქმნის სტრიქონში არსებულ ყველა სიმბოლოს ზევით.

სიმბოლური კოდი (<Строка>, <НомерСимвола>) – ფუნქცია იღებს სიმბოლოს კოდს, რომელიც მდებარეობს გადაცემულ სტრიქონში მითითებული ნომრის პოზიციაზე.

ლომი (<Строка>, <ЧислоСимволов>) – ფუნქცია ირჩევს სტრიქონის პირველ მარცხენა სიმბოლოებს.

იპოვე(<Строка>, <ПодстрокаПоиска>) — ფუნქცია პოულობს საძიებო სტრიქონის გამოჩენას, როგორც ქვესტრიქონი წყაროს სტრიქონში.

NReg(<Строка>) — ფუნქცია გარდაქმნის სტრიქონში არსებულ ყველა სიმბოლოს პატარებად.

მარჯვენა (<Строка>, <ЧислоСимволов>) ეს ფუნქციაგანსხვავდება მარცხენა ფუნქციებისაგან იმით, რომ ირჩევს ბოლო სიმბოლოებს სტრიქონის მარჯვნივ.

EmptyString (<Строка>) — ფუნქცია ამოწმებს სტრიქონს მნიშვნელოვანი სიმბოლოების არსებობისთვის.

სიმბოლო (<КодСимвола>) — ფუნქცია გარდაქმნის სიმბოლოს კოდს სიმბოლოს შემცველ სტრიქონში.

AbbrL(<Строка>) — ფუნქცია წყვეტს სტრიქონში პირველი მნიშვნელოვანი სიმბოლოს მარცხნივ უმნიშვნელო სიმბოლოებს.

AbbrLP(<Строка>) — ფუნქცია წყვეტს არამნიშვნელოვან სიმბოლოებს სტრიქონში პირველი მნიშვნელოვანი სიმბოლოს მარცხნივ და სტრიქონის ბოლო მნიშვნელოვანი სიმბოლოს მარჯვნივ.

Abbr(<Строка>) — ფუნქცია წყვეტს უმნიშვნელო სიმბოლოებს სტრიქონის ბოლო მნიშვნელოვანი სიმბოლოს მარჯვნივ.

ოთხშაბათი (<Строка>, <НачальныйНомер>, <ЧислоСимволов>) — ფუნქცია ირჩევს სიმბოლოების სტრიქონს, სიმბოლოდან დაწყებული<НачальныйНомер>, საერთო რაოდენობა<ЧислоСимволов>.

სიძლიერის სიგრძე (<Строка>) — ფუნქცია იღებს ხაზში სიმბოლოების რაოდენობას.

StrReplace (<Строка>, <ПодстрокаПоиска>, <ПодстрокаЗамены>) — ფუნქცია პოულობს საძიებო ქვესტრიქონის ყველა შემთხვევას წყაროს სტრიქონში და ანაცვლებს მას შემცვლელი ქვესტრიქონით.

StrGetString (<Строка>, <НомерСтроки>) - ფუნქცია იღებს მრავალხაზოვან სტრიქონს რიცხვის მიხედვით.

StrNumberOccurrences(<Строка>, <ПодстрокаПоиска>) — ფუნქცია ითვლის წყაროს სტრიქონში საძიებო ქვესტრიქონის შემთხვევების რაოდენობას.

StrNumberRow(<Строка>) — ფუნქცია ითვლის ხაზების რაოდენობას მრავალხაზოვანი სტრიქონში. მრავალხაზოვანი სტრიქონში ხაზები გამოყოფილია ახალი ხაზებით.

Treg(<Строка>) — ფუნქცია გარდაქმნის სტრიქონს სათაურში. ეს ნიშნავს, რომ ყოველი სიტყვის პირველი სიმბოლო გარდაიქმნება სათაურის რეგისტრის ან ზედ, თუ სათაურის ასო არ არის მითითებული სიმბოლოსთვის. დარჩენილი სიმბოლოები გარდაიქმნება მცირე რეესტრში.

ტიპის კონვერტაციები
მონაცემთა ტიპების აშკარა კონვერტაციისთვის, არსებობს ამავე სახელწოდების ფუნქციები მონაცემთა ტიპთან, რომლითაც ხდება კონვერტაცია: String(<Значение>)

StringFromNumbers = String(Number);

ყველა ეს ფუნქცია დეტალურად არის აღწერილი სინტაქსის ასისტენტში.

სიმებიანი მუშაობის მაგალითები

რიცხვის სტრიქონად გადაქცევა და უკან.

წლის სიმებიანი გამოსახულების მისაღებად გამოიყენეთ ფორმატის ფუნქცია.

წელი = ფორმატი(მიმდინარე თარიღი(), "DF=yyyy") // წელი = "2012"

რიცხვის სტრიქონად გადასაყვანად ჯგუფის გამყოფი სიმბოლოს ჩასმის გარეშე (უწყვეტი სივრცე), თქვენ უნდა გამოიყენოთ ფორმატის ფუნქცია NG=0 პარამეტრით:

Number = 2012 Line = Format(Number, "NH=0" );

//String = "2012"

სტრიქონი სივრცეების გარეშე. String ტიპი გვხვდება პროგრამირების ყველა ენაში. ის პრიმიტიულია და 1C-ში არის მასთან მუშაობის მრავალი ფუნქცია. ამ სტატიაში ჩვენ უფრო დეტალურად განვიხილავთსხვადასხვა გზები

სიმებიანი ტიპებით მუშაობა 1C 8.3 და 8.2 მაგალითების გამოყენებით.

ხაზი

ნებისმიერი ტიპის ცვლადის სტრინგად გადასაყვანად, არსებობს ამავე სახელწოდების ფუნქცია "String()". შეყვანის პარამეტრი იქნება თავად ცვლადი, რომლის სიმებიანი გამოსახულება უნდა იყოს მიღებული.
String (False) // აბრუნებს "არა"
String(12345) // აბრუნებს "12,345"

სტრიქონი(მიმდინარე თარიღი()) //"07/21/2017 11:55:36″

შესაძლებელია არა მხოლოდ პრიმიტიული ტიპების სტრინგად გადაქცევა, არამედ სხვა, მაგალითად, დირექტორიებისა და დოკუმენტების ელემენტები.

SokrLP, SokrL, SokrP ამ ფუნქციების შეყვანის პარამეტრები არის სტრიქონის ტიპის ცვლადი. ფუნქციები აშორებს უმნიშვნელო სიმბოლოებს (ფართები, ვაგონის დაბრუნება და ა.შ.): მარცხნიდან დამარჯვენა მხარე

, მხოლოდ მარცხენა მხარეს და მხოლოდ მარჯვნივ, შესაბამისად.
Abbreviation(" Spaces will remove ორივე მხარეს ") // "Spaces will remove ორივე მხარეს"
Abbreviation(" Spaces on two sides will remove ") // " spaces on the right will remove"

ლომი, მარჯვენა, საშუალო

ეს ფუნქციები საშუალებას გაძლევთ ამოჭრათ სტრიქონის ნაწილი. "Left()" ფუნქცია დააბრუნებს სტრიქონის ნაწილს მისი მარცხენა მხრიდან მითითებული სიგრძის. "Right()" ფუნქცია მსგავსია, მაგრამ ჭრის მარჯვნიდან. "Avg()" ფუნქცია საშუალებას გაძლევთ მიუთითოთ სიმბოლოების რაოდენობა, საიდანაც შეირჩევა ხაზი და მისი სიგრძე.

Lev("String ცვლადი", 4) // აბრუნებს "Str"
Right("String ცვლადი", 7) // აბრუნებს "ცვლადი"
საშუალო ("String variable", 2, 5) // აბრუნებს "troco"

სიძლიერის სიგრძე

ფუნქცია განსაზღვრავს სიმბოლოების რაოდენობას, რომლებიც შეიცავს სიმებიანი ცვლადი.

StrLength("Word") // შესრულების შედეგი იქნება ნომერი 5

იპოვე

ფუნქცია შესაძლებელს ხდის სტრიქონის ნაწილის ძიებას სიმებიანი ცვლადში. დაბრუნებული მნიშვნელობა იქნება რიცხვი, რომელიც აჩვენებს ნაპოვნი სტრიქონის დასაწყისის პოზიციას. თუ შესატყვისი არ არის ნაპოვნი, ნული ბრუნდება.

გთხოვთ გაითვალისწინოთ, რომ ძიება რეგისტრირებულია. თუ საძიებო ქვესტრიქონის ერთზე მეტი შემთხვევაა თავდაპირველ სტრიქონში, ფუნქცია დააბრუნებს პირველი შემთხვევის დასაწყისს.

Find("ერთი, ორი, ერთი, ორი, სამი", "ორი") // ფუნქცია დააბრუნებს რიცხვს 6

EmptyString

ამ ფუნქციის გამოყენება საშუალებას გაძლევთ განსაზღვროთ ცარიელია თუ არა სტრიქონი. უმნიშვნელო სიმბოლოები, როგორიცაა სივრცე, ვაგონის დაბრუნება და სხვა არ არის გათვალისწინებული.

EmptyString ("Pupkin Vasily Ivanovich") // ფუნქცია დააბრუნებს მნიშვნელობას False
EmptyString(" ") // ფუნქცია დააბრუნებს მნიშვნელობას True

VReg, NReg, Treg

ეს ფუნქციები ძალიან სასარგებლოა სიმებიანი ცვლადების შედარებისა და კონვერტაციისას. "Vreg()" დააბრუნებს თავდაპირველ სტრიქონს დიდი ასოებით, "HPreg()" მცირე ასოებით და "Treg()" დააფორმატებს მას ისე, რომ თითოეული ცალკეული სიტყვის პირველი სიმბოლო იყოს მთავრული, ხოლო ყველა მომდევნო სიმბოლო დიდი ასოებით.

Vreg("GENERAL DIRECTOR") // დაბრუნების მნიშვნელობა - "GENERAL DIRECTOR"
NReg ("CEO DIRECTOR") // დაბრუნების მნიშვნელობა - "CEO"
TREG ("CEO DIRECTOR") // დაბრუნების მნიშვნელობა - "გენერალური დირექტორი"

გვერდის ჩანაცვლება

ეს ფუნქცია ტექსტის რედაქტორებში ჩანაცვლების ანალოგია. ის საშუალებას გაძლევთ შეცვალოთ ერთი სიმბოლო ან სიმბოლოების ნაკრები მეორეთი სიმებიანი ცვლადებში.

StrReplace("წითელი, თეთრი, ყვითელი", ","", ";") // აბრუნებს "წითელს; თეთრი; ყვითელი"

StrNumberLines

ფუნქცია საშუალებას გაძლევთ განსაზღვროთ ტექსტურ ცვლადში გამოყოფილი ხაზების რაოდენობა, რომლებიც გამოყოფილია აბრუნებით.

ქვემოთ მოცემულ მაგალითში ციკლი გაივლის სამ რაუნდს, რადგან LineNumberRow ფუნქცია დააბრუნებს მნიშვნელობას 3:

იყიდება ind = 1 Str-ის მიხედვით.
<тело цикла>
საბოლოო ციკლი;

StrGetString

ეს ფუნქცია მუშაობს მრავალხაზოვანი ტექსტით ისევე, როგორც წინა. ის საშუალებას გაძლევთ მიიღოთ კონკრეტული სტრიქონი ტექსტური ცვლადიდან.

StrGetString("String1" + Characters.PS + "String2" + Characters.PS + "String3", 2) // დააბრუნეთ "String2"

PageNumberOccurrences

ფუნქცია ითვლის საძიებო სტრიქონში სიმბოლოს ან ქვესტრიქონის გაჩენის რაოდენობას.

StrNumberAttachments("a;b;c;d; ", ";") // ფუნქცია დააბრუნებს რიცხვს 4

სიმბოლო და სიმბოლო კოდი

ეს ფუნქციები საშუალებას გაძლევთ მიიღოთ სიმბოლო მისი კოდით Unicode კოდირებით, ასევე განსაზღვროთ ეს კოდი თავად სიმბოლოთი.

SymbolCode("A") // ფუნქცია დააბრუნებს რიცხვს 1040
CharacterCode(1040) // ფუნქცია დააბრუნებს "A"-ს

საერთო ამოცანები სტრინგებთან მუშაობისას

სტრიქონების შეერთება

რამდენიმე სტრიქონის გაერთიანებისთვის (შეერთების შესასრულებლად) საკმარისია დამატების ოპერატორის გამოყენება.

„სტრიქონი 1″ + „ხაზი 2″ //ორი ხაზის დამატების შედეგი იქნება „სტრიქონი 1 ხაზი 2“

ტიპის კონვერტაცია

იმისათვის, რომ ტიპი გადაიყვანოთ სტრინგად, მაგალითად, ბმული დირექტორიაში ელემენტზე, რიცხვზე და ა.შ., საკმარისია გამოიყენოთ "String()" ფუნქცია. ფუნქციები, როგორიცაა "ScrLP()" ასევე გარდაქმნის ცვლადებს სტრიქონად, მაგრამ დაუყოვნებლივ წყვეტს უმნიშვნელო სიმბოლოებს.

String(1000) // აბრუნებს "1000"

გთხოვთ გაითვალისწინოთ, რომ რიცხვის სტრიქონად გადაქცევისას პროგრამა ავტომატურად ამატებდა სივრცეს, რომელიც გამოყოფს ათასს. ამის თავიდან ასაცილებლად, შეგიძლიათ გამოიყენოთ შემდეგი კონსტრუქციები:

StrReplace(String(1000),Characters.NPP,"") // აბრუნებს "1000"

String(Format(1000,"HG=")) // აბრუნებს "1000"

ციტატები სტრიქონში

ხშირად მოგიწევთ გაუმკლავდეთ ციტატების მითითების აუცილებლობას სტრიქონების ცვლადში. ეს შეიძლება იყოს მოთხოვნის ტექსტი დაწერილი კონფიგურატორში, ან უბრალოდ ცვლადი. ამ პრობლემის გადასაჭრელად, თქვენ უბრალოდ უნდა დააყენოთ ორი ციტატა.

Header = String("Horns and Hooves LLC - ეს ჩვენ ვართ!") // დააბრუნებს "Horns and Hooves LLC - ეს ჩვენ ვართ!"

მრავალხაზოვანი, ხაზის შესვენება

მრავალხაზოვანი ტექსტის შესაქმნელად, უბრალოდ დაამატეთ მას ხაზების წყვეტები (Symbols.PS).

MultilineText = "პირველი ხაზი" + სიმბოლოები. PS + "მეორე ხაზი"

როგორ ამოიღოთ სივრცეები

იმისათვის, რომ წაშალოთ სივრცეები მარჯვნივ ან მარცხნივ, შეგიძლიათ გამოიყენოთ ფუნქცია "ScrAP()" (ასევე "ScrL()" და "ScrP()"):

StringNoSpaces = აბრევიატურა (" ბევრი ასო ") // ფუნქცია დააბრუნებს მნიშვნელობას "ბევრ ასო"

თუ რიცხვის სტრიქონად გადაქცევის შემდეგ, თქვენ უნდა ამოიღოთ უწყვეტი სივრცეები, გამოიყენეთ შემდეგი კონსტრუქცია:

StringNoSpaces = StrReplace(String(99999),Characters.NPP,"") // აბრუნებს "99999"

პროგრამისტები ასევე ხშირად იყენებენ შემდეგ კონსტრუქციას, რომელიც საშუალებას გაძლევთ წაშალოთ ან შეცვალოთ სხვა სიმბოლოთი ყველა სივრცე ტექსტის ცვლადისგან:

StringNoSpaces = StrReplace("გამარჯობა","") // აბრუნებს "გამარჯობა"

სიმების ერთმანეთთან შედარება

თქვენ შეგიძლიათ შეადაროთ ტერმინები ჩვეულებრივი ტოლობის ნიშნით. შედარება რეგისტრირებულია.

"Hello" = "hello" // აბრუნებს False
"Hello" = "Hello" // აბრუნებს True
"Hello" = "მშვიდობით" // დაბრუნდება False



სტატიები თემაზე