1 გ ამოიღეთ დამატებითი სივრცეები ხაზში. როგორ ამოიღოთ სივრცეები

ხშირად დასმული კითხვები ან მე -8 პლატფორმა დუმალებისთვის.

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

V:როგორ ამოიღოთ სივრცე რიცხვში 12,600.00?
ო:მნიშვნელოვანია გვესმოდეს, რომ აქ არ გამოიყენება სივრცის პერსონაჟი, არამედ ეგრეთ წოდებული "არარღვევი სივრცე", ამიტომ, მაგალითად, ასეთი კონსტრუქცია:

StrReplace (VariableNumber, "", "");

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

StrReplace (VariableNumber, Symbols.NPP, ""); // 1 ვარიანტი
ფორმატი (VariableNumber, "ChG ="); // მე -2 ვარიანტი

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

მოთხოვნა = ახალი მოთხოვნა ("
| არჩევა
| მომსახურების განხორციელება. რეგისტრატორი,
| მომსახურების განხორციელება. თანხა
| FROM
| დაგროვების რეესტრი. მომსახურების რეალიზაცია, როგორც მომსახურების განხორციელება
| სად
| რეგისტრატორი LINK Document.RealizationTovarovSlug ");

V:როგორ გადავიტანო გარკვეული დოკუმენტები / დირექტორიები იდენტურ კონფიგურაციებს შორის?
ო:ეს შეიძლება გაკეთდეს XMLLoadDataXML.epf– ის ზოგადი დამუშავების გამოყენებით, რომელიც მიეწოდება ITS დისკებს.

V:როგორ გადავიტანოთ მონაცემები სხვადასხვა კონფიგურაციებს შორის (ან 7.7 -დან 8 -მდე)?
ო: საუკეთესო ვარიანტიჩემი აზრით, არის ტიპიური კონფიგურაციის "მონაცემთა კონვერტაცია" გამოყენება, რომელიც მოწოდებულია ITS დისკებზე, ასევე არის რამდენიმე სტატია, რომელიც აღწერს ამ კონფიგურაციის გამოყენებას.

V:როგორ დავამატოთ გარკვეული სტრიქონი შეკითხვაში არასამთავრობო სტრიქონის ველში, მაგალითად SELECT Implementation of GoodsServices.Sum + "rub".
ო:Არანაირად. ტიპის კონვერტაცია შეუძლებელია მოთხოვნაში. ზოგი დაბნეულია EXPRESS შეკითხვის ენის კონსტრუქციით, მაგრამ ის მხოლოდ კომპოზიციური ტიპის მნიშვნელობას გადააქცევს ამ მნიშვნელობის ერთ ტიპზე და არავითარ შემთხვევაში არ გარდაქმნის ტიპს, ამიტომ ის არ გამოიყენება ამ სიტუაციაში.

V:როგორ დავაყენოთ პირობა მოთხოვნაში ველზე შეუზღუდავი სიგრძის სტრიქონით, მაგალითად, შეარჩიოთ ყველა დოკუმენტი კონკრეტული კომენტარით?
ო:ამისათვის თქვენ უნდა შეზღუდოთ ველის სიგრძე EXPRESS შეკითხვის ენის ოპერატორის გამოყენებით. Მაგალითად:

მოთხოვნა = ახალი მოთხოვნა ("
| არჩევა
| საქონლის სერვისების განხორციელება. ბმული
| FROM
| დოკუმენტი. საქონლის სერვისების რეალიზაცია როგორც საქონლის მომსახურების განხორციელება
| სად
| EXPRESS (GoodsServices.Complementation of GoodsServices.Comment AS LINE (100)) = & კომენტარი ");

V:არის თუ არა 7.7 CatalogIB () ფუნქციის ანალოგი v 8 -ში?
ო:არა, ვინაიდან ასეთი ფუნქცია აზრი არ ექნება კლიენტ-სერვერის მუშაობის რეჟიმს. თუმცა, ფაილის ოპერაციული რეჟიმისთვის შეგიძლიათ მიიღოთ დირექტორია საინფორმაციო ბაზაშემდეგი კონსტრუქციის გამოყენებით:

CatalogIB = НStr (InformationBaseConnection String (), "ფაილი");

V:როგორ გავთიშოთ კვანძი განაწილებული ინფობიდან?
ო:შემდეგი კონსტრუქციით:

გაცვლის გეგმები. SetMasterNode (განუსაზღვრელი);

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

V:როგორ მივიღოთ დოკუმენტის სახელი (7.7 View () მეთოდის ანალოგი)?
ო:მეტამონაცემების გამოყენება. Მაგალითად:

V:როგორ შევარჩიოთ ყველა სახის დოკუმენტი ერთი მოთხოვნით?
ო:მეტამონაცემების გამოყენება და მოთხოვნის გაერთიანების უნარი V:

მოთხოვნა = ახალი მოთხოვნა;
ტექსტი = "";
თითოეული დოკუმენტისთვის მეტამონაცემებიდან. Docs Loop
ტექსტი = ტექსტი + "აირჩიეთ ბმული დოკუმენტიდან." + Document.Name + "COMBINE";
ციკლის დასასრული;
Request.Text = ლომი (ტექსტი, StrLength (ტექსტი) -StrLength ("კომბინირება"));
შერჩევა = Query.Run (). აირჩიეთ ();

V:როგორ შევაჩეროთ ანგარიშის / დამუშავების შესრულება?
ო: OperatorUserInterruptsUser () - ის გამოყენებით, რეკომენდებულია მისი გამოყენება მარყუჟების შიგნით. როდესაც მომხმარებელი დააჭირეთ Ctrl + Break კლავიშთა კომბინაციას, შესრულება წყდება და ნაჩვენებია შესაბამისი შეტყობინება. Მაგალითად:

შერჩევისას. შემდეგი () მარყუჟი
HandleUserInterrupt ();

ციკლის დასასრული;

V:ფორმას აქვს TabularField ValueTree ტიპისა და Tree თვისებების კომპლექტით. რატომ არ არის ნაჩვენები ღირებულების ხე?
ო:გარდა ამისა, აუცილებელია DisplayHierarchy თვისების დაყენება ერთ -ერთ სვეტზე.

V:როგორ გამოვიყენოთ დაგეგმილი ამოცანები ინფო ბაზის ოპერაციის ფაილის რეჟიმში?
ო:კლიენტ-სერვერისგან განსხვავებით, ფაილის რეჟიმში, პასუხისმგებლობაა განხორციელებაზე ავტომატური დაწყება რუტინული დავალებებიენიჭება დეველოპერს. ამოცანების ავტომატური დაწყების განსახორციელებლად გჭირდებათ Waiting Handler, რომელიც პერიოდულად ამოწმებს "ვადაგასულ" ამოცანებს და იწყებს მათ. მიზანშეწონილია გამოიყენოთ ცალკე სესია ამისათვის. მაგალითი:

სამუშაოს შემოწმების პროცედურა ()
RunProcessingJobs ();
პროცედურის დასრულება
ConnectWaitingHandler ("სამუშაოს შემმოწმებელი", 3);

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

ფუნქცია StringArray (ღირებულების მნიშვნელობა, გამყოფი)
თუ TypeZnch (მნიშვნელობა) = ტიპი ("სიმებიანი") მაშინ
MnStr = StrReplace (მნიშვნელობა, გამყოფი, სიმბოლოები. PS);
მასივი = ახალი მასივი;
N = 1 რიგის მიხედვით რიგების რიგი (MnStr) ციკლი
მასივი. დამატება (StrGetString (MnStr, n));
ციკლის დასასრული;
დაბრუნების მასივი;
ElseIfTypeZnch (მნიშვნელობა) = ტიპი ("მასივი") შემდეგ
სიმებიანი = "";
თითოეული ელემენტის ღირებულების ციკლიდან
სიმებიანი = სიმებიანი +? (სიმებიანი "", გამყოფი, "") + ელემენტი;
ციკლის დასასრული;
დაბრუნების სიმებიანი;
წინააღმდეგ შემთხვევაში
ანაზღაურება განუსაზღვრელია;
Დაასრულე თუ;
EndFunction

V:როგორ გავააქტიუროთ კონფიგურატორში ცვლილებების შეტანის შესაძლებლობა ტიპიურ კონფიგურაციაში?
ო:ვინაიდან ტიპიური კონფიგურაციები მხარდაჭერილია (რაც საშუალებას იძლევა ავტომატური რეჟიმიგანახლება), შემდეგ ნაგულისხმევად, კონფიგურაციაში ცვლილებების შეტანის შესაძლებლობა გამორთულია. ამ ფუნქციის გასააქტიურებლად, აირჩიეთ "კონფიგურაცია> მხარდაჭერა> მხარდაჭერის პარამეტრები" მენიუს პუნქტი კონფიგურატორში და დააჭირეთ ღილაკს "ჩართეთ ვარიანტის შეცვლა" გახსნილ ფანჯარაში.

V:როგორ დავაყენოთ დამუშავების / კონფიგურაციის პაროლი?
ო: 1C v 8 -ში პაროლების დაყენება შესაძლებელია მხოლოდ ობიექტის მოდულებზე. პაროლის დასაყენებლად გახსენით ობიექტის მოდული და აირჩიეთ მენიუს პუნქტი "ტექსტი> პაროლის დაყენება". ასევე შესაძლებელია კონფიგურაციის მიწოდება ობიექტის მოდულების საწყისი ტექსტების გარეშე (კონფიგურაცია შესაძლებელია "კონფიგურაცია> მიწოდების კონფიგურაცია> მიწოდების პარამეტრები"). მინდა აღვნიშნო, რომ ამ დროისთვის არცერთი ეს მეთოდი არ არის საიმედო დაცვამოდულის კოდის ნახვისგან.

V:რატომ ეძებს დოკუმენტს FindByNumber (<Номер документа>)?
ო:უნდა გვახსოვდეს, რომ თუ პერიოდული ნუმერაცია მითითებულია კონფიგურატორში მოცემული ტიპის დოკუმენტებისთვის, დოკუმენტის ნომრის გარდა, აუცილებელია ინტერვალის თარიღის მითითება, როგორც მეორე პარამეტრი. წინააღმდეგ შემთხვევაში, განხორციელდება ცარიელი თარიღის მქონე დოკუმენტის ძებნა, რაც აშკარად არ გამოიწვევს სასურველ შედეგს.

V: 1C 8.1 -ში, საჭიროების შემთხვევაში, დაკავშირება გამართულ პროგრამასთან (კონფიგურატორი> გამართვა> კავშირი) არსებული გამართვის ელემენტებში ცარიელია. Რა არის მიზეზი?
ო:ფაქტია, რომ იმ პროგრამისთვის, რომლის გამართვასაც ვაპირებთ, თქვენ მკაფიოდ უნდა ჩართოთ გამართვა. ინსტრუმენტების მენიუ> პარამეტრები> სისტემის ჩანართი> დროშის გამართვის გამართვა.

V:როგორ განმეორდეს სტრიქონებზე დინამიური სია(მაგალითად, DirectoryList ან DocumentList)?
ო:ეს შეიძლება გაკეთდეს Report Builder– ის გამოყენებით, მაგალითად:

აღმაშენებელი = ახალი ანგარიშის შემქმნელი;
Builder.DataSource = NewDataSourceDescription (DocumentList);
შერჩევა = Builder.Result.Select ();
შერჩევისას. შემდეგი () მარყუჟი
ანგარიში (Sample.Link);
ციკლის დასასრული;

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

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

// მაგალითი 1. დირექტორია იერარქიის ხედი
თუ მეტამონაცემები. წყაროები [დირექტორია] .HierarchyType = მეტამონაცემები. ObjectProperties.HierarchyView.GroupsAndItem იერარქია შემდეგ ...
// მაგალითი 2.RegisterWrite Mode
თუ Metadata.RegisterRecords [RegisterName] .RegisterRecordMode = მეტამონაცემები.ObjectProperties.RegisterWriterMode.Register წარდგენა შემდეგ ...
// მაგალითი 3. დოკუმენტის ნომრის სიხშირე
თუ მეტამონაცემები. დოკუმენტები [DocumentName] .Number Frequency = Metadata.ObjectProperties.DocumentNumber Frequency. არასამთავრობო პერიოდული შემდეგ ...

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

ხე. სვეტები. დამატება ("შენიშვნა", ტიპების ახალი აღწერა ("ნომერი"));
ElementsForm.Tree.CreateColumns ();
ხის სვეტები = ფორმის ელემენტები. ხე. სვეტები;
ColumnsTree.Remark.DataFlag = "შენიშვნა";
ColumnsTree.Label.SetUpdateElement (ტიპი ("ჩამრთველი"));
ColumnsTree.Note.EditMode = EditModeColumns.Mesans
ენნო;
ColumnsTree.Check.ThreeStatesCheckbox = მართალია;

მეორეც, ჩამრთველის შეცვლისას თქვენ უნდა დაადგინოთ შესაბამისი მნიშვნელობები დაქვემდებარებულ ხაზებში და გააკონტროლოთ ჩამრთველის მნიშვნელობა "მშობლის ხაზში":

პროცედურის TreeOnChange ჩამრთველი (ერთეული, სვეტი)
CurrentLine = Element.CurrentLine;
თუ CurrentLine.Remark = 2 მაშინ
CurrentString.Label = 0;
Დაასრულე თუ;
CheckboxSetting (CurrentLine, CurrentLine.Remark);
მიუხედავად იმისა, რომ CurrentLine.ParentUndefined Loop
CurrentString.Parent.Label =? (SetForAll (CurrentLine), CurrentLine.Plate, 2);
CurrentLine = CurrentLine.Parent;
ციკლის დასასრული;
პროცედურის დასრულება

აქ არის Checkboxes () პროცედურა რეკურსიულად ადგენს დროშებს დაქვემდებარებულ ხაზებზე:

ჩამრთველის პროცედურა (მიმდინარე ხაზი, მნიშვნელობა)
თითოეული ხაზისთვის მიმდინარე ხაზიდან. ხაზების მარყუჟი
გვერდის შენიშვნა = მნიშვნელობა;
ჩამრთველების დაყენება (გვერდი, გვერდის მარკირება);
ციკლის დასასრული;
პროცედურის დასრულება

და SetForAll () ფუნქცია ამოწმებს, არის თუ არა იგივე მნიშვნელობა ყველა ხაზისთვის მიმდინარე დონეზე:

ფუნქციის ნაკრები ყველასთვის (სიმებიანი)
თითოეული რიგისთვის სიმებიანი. მშობელი. რიგები მარყუჟი
თუ გვერდი შენიშვნის ხაზი შენიშვნა მაშინ
დაბრუნება ცრუ;
Დაასრულე თუ;
ციკლის დასასრული;
დაბრუნება ჭეშმარიტი;
EndFunction

V:როგორ განვახორციელოთ დახარისხება სიის სახით საკუთარი ატრიბუტებით?
ო:თუ ატრიბუტი არის პრიმიტიული ტიპის, მაშინ საკმარისია დააყენოთ მნიშვნელობა "ინდექსი" ან "ინდექსი დამატებით." "ინდექსის" ატრიბუტის თვისებისთვის. შეკვეთით “(მიუწვდომელია ValueStorage ტიპის ატრიბუტებისთვის). თუ ატრიბუტი არის მითითების ტიპი, მაშინ აუცილებელია მისი დახარისხების მკაფიოდ ჩართვა. Მაგალითად:

ElementUP = ElementsForms.DirectoryList.SettingPorder.Find ("ატრიბუტი 1");
თუ Element UP განუსაზღვრელია მაშინ
ElementUP.Availability = ჭეშმარიტი;
Დაასრულე თუ;

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

მაგალითი 1. მოდით შევქმნათ სიმებიანი ცვლადი ტექსტით.

StringVariable = "გამარჯობა სამყარო!";

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

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

ქუჩის სიგრძე

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

მაგალითი 2. დავითვალოთ სიმბოლოების რაოდენობა სტრიქონში "გამარჯობა სამყარო!"

სიმებიანი = "გამარჯობა სამყარო!"; სიმბოლოების რაოდენობა = StrLength (სიმებიანი); ანგარიში (პერსონაჟების რაოდენობა);

ამ კოდის შესრულების შედეგი იქნება სტრიქონში სიმბოლოების რაოდენობის ჩვენება: 11.

შემოკლება

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

  • სივრცე;
  • უწყვეტი სივრცე;
  • ცხრილების შედგენა;
  • ვაგონის დაბრუნება;
  • ხაზის თარგმანი;
  • ფორმის (გვერდის) თარგმნა.

მაგალითი 3. ამოიღეთ ყველა სივრცე ხაზის "სამყარო!" მარცხენა მხრიდან. და მიამაგრეთ მას სტრიქონი "გამარჯობა".

სიმებიანი = შემოკლებული ("მშვიდობა!"); სიმებიანი = "გამარჯობა" + სიმებიანი; ანგარიში (სიმებიანი);

ამ კოდის შესრულების შედეგი იქნება ხაზის გამოცემა "გამარჯობა სამყარო!"

შემოკლება

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

მაგალითი 4. ფორმა "გამარჯობა" და "მსოფლიო!" ფრაზა "გამარჯობა სამყარო!"

სიმებიანი = შემოკლებული ("გამარჯობა") + "" + შემოკლებული ("სამყარო!"); ანგარიში (სიმებიანი);

სოკრლპ

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

მაგალითი 5. წაშალეთ უმნიშვნელო სიმბოლოები მარცხნივ და მარჯვნივ კონტრაგენტის სახელით.

Counterparty = Directories.Contractors.NaytiPoRequisite ("INN", "0777121211"); CounterpartyObject = Counterparty.GetObject (); CounterpartyObject.Name = ShortLP (CounterpartyObject.Name); CounterpartyObject.Write ();

ლომი

Ლომი(<Строка>, <ЧислоСимволов>) ... იღებს სტრიქონის პირველ სიმბოლოებს, სიმბოლოების რაოდენობა მითითებულია პარამეტრში პერსონაჟების რაოდენობა.

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

საწყისი სახელი = ლომი (თანამშრომლის სახელი, 1); პატრონიმიული საწყისი = ლომი (თანამშრომელი, პატრონიმიკი, 1); სრული სახელი = თანამშრომელი. გვარი + "" + საწყისი სახელი + "." + პატრონიკის საწყისი + ".";

მარჯვენა

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

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

სიმებიანი = "მიმდინარე თარიღი: 20170910"; StringDate = მარჯვნივ (სიმებიანი, 8); თარიღი = თარიღი (StringDate);

ოთხშაბათს

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

მაგალითი 8. დავუშვათ, რომ მეცხრე პოზიციიდან დაწყებული სიმებიანი ცვლადი შეიცავს რეგიონის კოდს, თქვენ უნდა მიიღოთ იგი და ჩაწეროთ ცალკე ხაზში.

ხაზი = "რეგიონი: 99 მოსკოვი"; რეგიონი = ოთხ (ხაზი, 9, 2);

ძებნა

მოძებნა (<Строка>, <ПодстрокаПоиска>, <НаправлениеПоиска>, <НачальнаяПозиция>, <НомерВхождения>) ... ეძებს მითითებულ სტრიქონს სტრიქონში, აბრუნებს ნაპოვნი ქვესტრიქონის პირველი სიმბოლოს პოზიციის ნომერს. განვიხილოთ ამ ფუნქციის პარამეტრები:

  • ხაზი... წყაროს სტრიქონი;
  • SubstringSearch... საძიებელი ქვესტრიქონი;
  • ძიების მიმართულება... განსაზღვრავს მიმართულებას სტრიქონში ქვესტრიქონის მოსაძებნად. შეუძლია მიიღოს ღირებულებები:
    • ძიების მიმართულება. დასაწყისიდან;
    • ძიების მიმართულება.;
  • საწყისი პოზიცია... განსაზღვრავს პოზიციას სტრიქონში, საიდანაც იწყება ძებნა;
  • ჩანაწერების რაოდენობა... განსაზღვრავს ორიგინალური სტრიქონის სასურველი ქვესიტრიჯის რაოდენობას.

მაგალითი 9. სტრიქონში "გამარჯობა სამყარო!" განსაზღვრეთ სიმბოლო "და" -ის ბოლო შემთხვევის პოზიცია.

PositionNumber = StrNayti ("გამარჯობა სამყარო!", "და", DirectionSearch.End); ანგარიში (პოზიციის ნომერი);

ამ კოდის შესრულების შედეგი იქნება სიმბოლოს "და" ბოლო შემთხვევის რიცხვის ჩვენება: 9.

VReg

BReg (<Строка>) ... გარდაქმნის ყველა სიმბოლოს მითითებულ სტრიქონში 1s 8 – ში დიდზე.

მაგალითი 10. გადაიყვანეთ სტრიქონი "გამარჯობა სამყარო!" დიდი ასოებით.

StringBreg = BReg ("გამარჯობა სამყარო!"); ანგარიში (StringVreg);

ამ კოდის შესრულების შედეგი იქნება ხაზის ჩვენება "HELLO WORLD!"

ნრეგი

HPreg (<Строка>) ... გარდაქმნის მითითებული სტრიქონის ყველა სიმბოლოს 1s 8 – ში მცირე ასოებად.

მაგალითი 11. გადაიყვანეთ სტრიქონი "HELLO WORLD!" მცირე ზომის.

StringNreg = НReg ("გამარჯობა მსოფლიო!"); ანგარიში (StringVreg);

ამ კოდის შესრულების შედეგი იქნება ხაზის "გამარჯობა სამყარო!"

ტრეგი

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

მაგალითი 12. სიტყვების პირველი ასოები დაწერეთ სტრიქონში "გამარჯობა სამყარო!"

StringTreg = Treg ("გამარჯობა სამყარო!"); ანგარიში (StringTreg);

ამ კოდის შესრულების შედეგი იქნება ხაზის ჩვენება "გამარჯობა მსოფლიო!"

სიმბოლო

სიმბოლო (<КодСимвола>) ... იღებს სიმბოლოს თავისი უნიკოდის კოდით.

მაგალითი 13. მოდით დავამატოთ მარცხნივ და მარჯვნივ ხაზში "გამარჯობა მსოფლიო!" სიმბოლო

StringWithStars = სიმბოლო ("9733") + "გამარჯობა მსოფლიო!" + სიმბოლო ("9733"); ანგარიში (StringWithStars);

ამ კოდის შესრულების შედეგი იქნება ხაზის გამოშვება "★ გამარჯობა მსოფლიო! ★"

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

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

მაგალითი 14. გაეცანით ბოლო პერსონაჟის კოდს "გამარჯობა მსოფლიო!"

სიმებიანი = "გამარჯობა მსოფლიო!"; CharacterCode = CharacterCode (სიმებიანი, StrLength (სიმებიანი)); ანგარიში (SymbolCode);

ამ კოდის შესრულების შედეგი იქნება სიმბოლო კოდის ჩვენება "!" - 33.

ცარიელი ხაზი

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

მაგალითი 15. შეამოწმეთ ცარიელია თუ არა სტრიქონი სამი სივრცისგან.

Empty = EmptyString (""); ანგარიში (ცარიელი);

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

გვერდის შეცვლა

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

მაგალითი 16. სტრიქონში "გამარჯობა მსოფლიო!" შეცვალეთ სიტყვა "მშვიდობა" სიტყვით "მეგობრები".

სიმებიანი = StrReplace ("გამარჯობა მსოფლიო!", "მსოფლიო", "მეგობრები"); ანგარიში (სიმებიანი);

ამ კოდის შესრულების შედეგი იქნება ხაზის ჩვენება "გამარჯობა მეგობრებო!"

StrNumberStrings

ხაზების StrNumber of Lines (<Строка>) ... ითვლის მრავალ ხაზოვანი სტრიქონის ხაზების რაოდენობას. Წასვლა ახალი ხაზი 1s 8 – ში სიმბოლო გამოიყენება PS(ხაზის არხის სიმბოლო).

მაგალითი 17. ტექსტში ხაზების რაოდენობის განსაზღვრა:
"Პირველი ხაზი
მეორე ხაზი
მესამე ხაზი "

ნომერი = StrNumber of Line ("პირველი ხაზი" + სიმბოლოები. PS + "მეორე ხაზი" + სიმბოლოები. PS + "მესამე ხაზი"); ანგარიში (ნომერი);

ამ კოდის შესრულების შედეგი იქნება ტექსტში სტრიქონების რაოდენობის ჩვენება: 3

StrGetString

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

მაგალითი 18. მიიღეთ ტექსტში ბოლო სტრიქონი:
"Პირველი ხაზი
მეორე ხაზი
მესამე ხაზი "

Text = "პირველი ხაზი" + სიმბოლოები. PS + "მეორე ხაზი" + სიმბოლოები. PS + "მესამე ხაზი"; LastString = StrGetString (ტექსტი, StrNumberLines (ტექსტი)); ანგარიში (ბოლო ხაზი);

ამ კოდის შესრულების შედეგი იქნება ხაზის ჩვენება "მესამე ხაზი".

შემთხვევების რიცხვი

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

მაგალითი 19. განსაზღვრეთ რამდენჯერ ჩნდება ასო "გ" სტრიქონში "ხაზები 1s 8.3 და 8.2" -ში, მიუხედავად მისი შემთხვევისა.

ხაზი = "ხაზები 1 -ებში 8.3 და 8.2"; შემთხვევების რაოდენობა = შემთხვევების რიცხვი (Vreg (სიმებიანი), "S"); ანგარიში (შემთხვევების რაოდენობა);

ამ კოდის შესრულების შედეგი იქნება მოვლენების რაოდენობის ჩვენება: 2.

PageStarts With

PageStarts with (<Строка>, <СтрокаПоиска>) ... ამოწმებს პირველ პარამეტრში გადატანილი სტრიქონი იწყება მეორე პარამეტრში არსებული სტრიქონით.

მაგალითი 20. განსაზღვრეთ იწყება თუ არა შერჩეული კონტრაგენტის TIN ნომერი 1. რიცხვით ცვლადი კონტრაგენტი კონტრაქტორები.

TIN = Counterparty.INN; იწყებაUnits = StrStarts with (INN, "1"); If BeginsUnits Then // Your Code EndIf;

გვერდი მთავრდება

გვერდი მთავრდება (<Строка>, <СтрокаПоиска>) ... ამოწმებს, პირველ პარამეტრში გადატანილი სტრიქონი მთავრდება თუ არა მეორე პარამეტრში.

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

TIN = Counterparty.INN; მთავრდება ორი = Str მთავრდება (INN, "2"); If Ends WithDouble მაშინ // თქვენი კოდი EndIf;

PageSplit

StrSplit (<Строка>, <Разделитель>, <ВключатьПустые>) ... სტრიქონს ყოფს ნაწილებად ნაწილებად განსაზღვრული განმსაზღვრელი სიმბოლოების საფუძველზე და წერს მიღებულ სტრიქონებს მასივში. პირველი პარამეტრი ინახავს თავდაპირველ სტრიქონს, მეორე შეიცავს სტრიქონს, რომელიც შეიცავს გამყოფს, მესამე ადგენს ჩაწეროს თუ არა მასივში ცარიელი სტრიქონები (სტანდარტულად მართალია).

მაგალითი 22. დავუშვათ, რომ ჩვენ გვაქვს სტრიქონი, რომელიც შეიცავს რიცხვებს ";", მიიღეთ რიცხვის მასივი სტრიქონიდან.

სიმებიანი = "1; 2; 3"; მასივი = StrSplit (სიმებიანი, ";"); RV = 0 მასივის მიხედვით. რაოდენობა () - 1 ციკლის მცდელობა მასივი [Rd] = ნომერი (AbbrLP (მასივი [Rd])); გამონაკლისი მასივი [Сч] = 0; მცდელობების დასასრული მარყუჟის დასასრული;

შესრულების შედეგად მიიღება მასივი 1 -დან 3 -მდე ნომრებით.

StrConnect

StrConnect (<Строки>, <Разделитель>) ... გადააქცევს სტრიქონების მასივს პირველი პარამეტრიდან სტრიქონში, რომელიც შეიცავს მასივის ყველა ელემენტს, გამოყოფილია მეორე პარამეტრში მითითებული გამყოფით.

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

Rd = 0 მასივის მიხედვით. რაოდენობა () - 1 მარყუჟის მასივი [Rd] = სიმებიანი (მასივი [Rd]); ციკლის დასასრული; სიმებიანი = StrConnect (მასივი, ";");

ხშირად ხდება, რომ 1C 8.2 და 8.3 – დან მონაცემების ჩატვირთვისა და გადმოტვირთვისას რიცხვებში არის ხარვეზები, რომლებიც ხელს უშლიან მონაცემთა ნორმალურ დამუშავებას. ამ პრობლემის გადაწყვეტა ძალიან მარტივია.

განვიხილოთ რა ტიპის სივრცეებია.

სივრცეები შეიძლება იყოს ორი სახის:

  • უწყვეტი სივრცე;
  • "რეგულარული" სივრცე.

უწყვეტი სივრცეების ამოღება

StringPresentation = სიმებიანი (ნომერი); // სისტემა წერს ცვლადს "10 000"

ძალიან ადვილია ასეთი სივრცეების ამოღება 1C- ში რიცხვითი ფორმატის ფუნქციის გამოყენებით:

ნომერი = ფორმატი (10000, "CHG =");

StringPresentation = სიმებიანი (ნომერი); // სისტემა ცვლადს დაწერს "10000"

ჩვენ დავაყენეთ დაჯგუფება: ფორმატის სტრიქონიცარიელი მნიშვნელობა (ასევე შეგიძლიათ დაწეროთ "0").

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

StringPresentation = StrReplace (სიმებიანი (StringPresentation), Chars.NPP, ""); // StringView ცვლადი იყო "10 000", ახლა "10000"

ანუ, ჩვენ უბრალოდ შევცვალეთ სტრიქონში უწყვეტი სივრცე (Characters.NPP) ცარიელი მნიშვნელობით.

რეგულარული სივრცეები

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

StringPresentation = StrReplace (სიმებიანი (StringPresentation), "", ""); // "10 000" გახდა "10000"

მაგალითი წინა მეთოდის მსგავსია. თუმცა, სიმბოლოების ნაცვლად. NPP, ჩვენ ვიყენებთ სტრიქონს ერთ სივრცეში.

თუ თქვენ იწყებთ 1C პროგრამირების სწავლას, ჩვენ გირჩევთ ჩვენს უფასო კურსს (არ დაგავიწყდეთ გამოიწერე youtube - რეგულარულად გამოდის ახალი ვიდეოები).

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

ხაზი

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

სიმებიანი (მცდარი) // აბრუნებს "არა" -ს
სიმებიანი (12345) // აბრუნებს "12 345"
სიმებიანი (მიმდინარე თარიღი ()) // 07/21/2017 11:55:36

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

SocrLP, SocrL, SocrP

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

AbbrLP ("ორივე მხარეს სივრცეები წაიშლება") // "ორივე მხარეს სივრცეები მოიხსნება"
შემოკლებულია ("ორივე მხარეს სივრცეები ამოიშლება") // "მარცხნივ სივრცეები წაიშლება"
აბრევიატურა ("ორივე მხარეს სივრცეები წაიშლება") // "სივრცეები მარჯვნივ წაიშლება"

ლომი, მართალია, ოთხშაბათი

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

ლომი ("სიმებიანი ცვლადი", 4) // აბრუნებს "სტროს"
მარჯვნივ ("სიმებიანი ცვლადი", 7) // აბრუნებს "ცვლადს"
ოთხ ("სიმებიანი ცვლადი", 2, 5) // აბრუნებს "ტროკოს"

ქუჩის სიგრძე

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

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

იპოვეთ

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

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

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

ცარიელი ხაზი

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

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

VReg, NReg, Treg

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

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

გვერდის შეცვლა

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

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

StrNumberStrings

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

ქვემოთ მოყვანილი მაგალითის მარყუჟი გაივლის სამ წრეს, რადგან RowNumber ფუნქცია დააბრუნებს 3 -ს:

Ind = 1 -ისთვის StrNumber of Lines ("String1" + Symbols.PS + "String2" + Symbols.PS + "String3") Loop
<тело цикла>
ციკლის დასასრული;

StrGetString

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

StrGetString ("String1" + სიმბოლოები. PS + "String2" + სიმბოლოები. PS + "String3", 2) // დაუბრუნებს "String2"

შემთხვევების რიცხვი

ფუნქცია ითვლის საძიებო სტრიქონში პერსონაჟის ან ქვესიტრიჯის რაოდენობას.

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

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

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

SymbolCode ("A") // ფუნქცია დააბრუნებს ნომერს 1 040
SymbolCode (1040) // ფუნქცია დააბრუნებს "A"

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

სიმებიანი სიმები

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

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

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

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

სიმებიანი (1000) // დაუბრუნებს "1000"

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

StrReplace (სიმებიანი (1000), სიმბოლოები. NPP, "") // დააბრუნებს "1000"

სიმებიანი (ფორმატი (1000, "CHG =")) // დაბრუნდება "1000"

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

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

სათაური = სიმებიანი ("შპს რქები და ჩლიქები" - ეს ჩვენ ვართ! ") // აბრუნებს" შპს რქები და ჩლიქები - ეს ჩვენ ვართ! "

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

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

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

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

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

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

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

StringNoSpaces = StrReplace (სიმებიანი (99999), სიმბოლოები. NPP, "") // დაბრუნდება "99999"

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

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

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

პირობები შეიძლება შევადაროთ ჩვეულებრივ თანაბარ ნიშანს. შედარება არის შემთხვევის მიმართ.

"გამარჯობა" = "გამარჯობა" // დააბრუნებს ცრუ
"გამარჯობა" = "გამარჯობა" // დაბრუნდება True
"გამარჯობა" = "ნახვამდის" // დაბრუნდება ცრუ

გაუზიარე ეს