Гэр / Интернет / 1 тэмдэгт хүртэл мөрийг тайруулна. Мөртэй ажиллах шинэ функцууд. Мөртэй ажиллах функц StrFind()

1 тэмдэгт хүртэл мөрийг тайруулна. Мөртэй ажиллах шинэ функцууд. Мөртэй ажиллах функц StrFind()

1С 8.3 дахь тусгай тэмдэгтүүд - багц тусгай дүрүүдмөр өгөгдлийн төрлүүдийн хувьд.

Тэд тус бүрийг илүү нарийвчлан авч үзье.

1С дахь тусгай тэмдэгтүүд: VK, VTab, NPP, PS, PF, Tab

Тусгай тэмдэгтүүдийг "Тэмдэгт" гэсэн глобал шинж чанарыг ашиглан дууддаг, жишээлбэл:

Текст = "Хүснэгтийн өмнөх текст" + Symbols.Tab + "хүснэгтийн дараах текст";

267 1С видео хичээлийг үнэгүй аваарай:

  • VC (CR) - тэрэг буцах. Эрт дээр үед цэгийн матриц эсвэл Daisy-wheel принтерүүд дээр энэ тэмдэгтийн кодыг хэвлэх толгойг мөрний эхэнд буцаах команд болгон ашигладаг байсан.
  • NPP (NBSp) - тасрахгүй зай(ихэвчлэн тоон мөрөнд харагддаг, жишээ нь: 1000).
  • PS (LF) - Line feed (LF - linefeed) - бөмбөрийг нэг мөр доош гүйлгэж, хэвлэх толгой нь нэг газар байна.
  • PF (FF) - форматын орчуулга. Хуудсыг хэвлэгчээс гаргаж, шинэ хуудаснаас хэвлэж эхэлнэ.
  • Таб (Таб) - табын тэмдэгт. Хэвтээ хүснэгт - хамгийн ойрын баганад хэвлэх байрлалыг тодорхойлох арга, хэд хэдэн тооны үржвэр (жишээлбэл, 8, 16, 24 ...).
  • VTab (VTab) - босоо хүснэгт. Энэ нь хэвтээтэй төстэй, зөвхөн бид шугаман дээр байрладаг. Принтерийн бөмбөрийг бага зэрэг гүйлгэх шалтгаан болдог (хэвлэх толгой ижил байрлалд (багана) хэвээр байна!)

PS + VK нь хоёр үйлдлийг гүйцэтгэдэг хослол юм: бөмбөрийг нэг мөр доош гүйлгэж, хэвлэх тэргийг мөрний эхэнд буцаадаг бөгөөд энэ нь Enter товчийг дарснаар хэрэглэгчийн хүлээж буй зүйлтэй тохирч байна.

Хэрэв та 1С програмчлалыг сурч эхэлж байгаа бол манайхыг санал болгож байна үнэгүй курс(битгий мартаарай

8.3.6.1977 хувилбарт хэрэгжсэн.

Бид мөртэй ажиллах функцүүдийн багцыг өргөжүүлсэн. Бид танд мөрийн өгөгдлийг задлан шинжлэхэд илүү дэвшилтэт хэрэглүүр өгөхийн тулд үүнийг хийсэн. Шинэ функцууд нь текстийг шинжлэх технологийн даалгавруудад тохиромжтой бөгөөд ашигтай байх болно. Форматласан хэлбэрээр өгөгдөл агуулсан текстийг задлан шинжлэхтэй холбоотой ажлуудад. Энэ нь тоног төхөөрөмжөөс хүлээн авсан зарим файлын дүн шинжилгээ, жишээлбэл, технологийн бүртгэлийн дүн шинжилгээ байж болно.

Шинэ функцүүдийн гүйцэтгэдэг бүх үйлдлийг та өмнө нь хийж болно. Embedded хэл дээр бичигдсэн их эсвэл бага нарийн төвөгтэй алгоритмуудын тусламжтайгаар. Тиймээс шинэ функцууд нь танд цоо шинэ боломжуудыг өгөхгүй. Гэсэн хэдий ч тэд кодын хэмжээг багасгаж, кодыг илүү хялбар, ойлгомжтой болгох боломжийг олгодог. Нэмж дурдахад тэд үйлдлүүдийн гүйцэтгэлийг хурдасгах боломжийг олгодог. Учир нь платформд хэрэгжсэн функцууд нь мэдээжийн хэрэг суулгасан хэл дээр бичигдсэн ижил төстэй алгоритмаас илүү хурдан ажилладаг.

Форматын функц StrTemplate()

Энэ функц нь параметрүүдийг мөр болгон орлуулдаг. Ийм хөрвүүлэлтийн хэрэгцээ, жишээлбэл, анхааруулах мессежийг харуулах үед ихэвчлэн үүсдэг. Энэ функцийн синтакс нь дараах байдалтай байна.

StrTemplate(<Шаблон>, <Значение1-Значение10>)

<Шаблон>параметрийн дүрслэлийг орлуулах мөр юм.

<Значение1> , ... <Значение10>- эдгээр нь параметрүүд (хамгийн ихдээ - арван) бөгөөд тэдгээрийн дүрслэлийг мөрөнд орлуулах ёстой.

Загвар дотор орлуулахыг хүссэн тодорхой газрыг зааж өгөхийн тулд %1, ... %10 маягтын тэмдэглэгээг ашиглах шаардлагатай. Загварт орсон тэмдэглэгээний тоо болон утгыг агуулсан параметрийн тоо таарч байх ёстой.

Жишээлбэл, ийм операторыг ажиллуулах үр дүн:

шугам байх болно:

2-р мөрөнд өгөгдлийн алдаа (Огнооны төрлийг шаарддаг)

StrCompare () мөр функц

Энэ функц нь хоёр мөрийн жижиг үсгийг ялгалгүй харьцуулдаг. Жишээлбэл, иймэрхүү:

Та ValueComparison объектыг ашиглахаасаа өмнө ижил үйлдлийг хийж болно:

Гэсэн хэдий ч шинэ функцийг ашиглах нь илүү хялбар харагдаж байна. Үүнээс гадна энэ функц нь Утга харьцуулах объектоос ялгаатай нь бас ажилладаг нимгэн үйлчлүүлэгч, мөн вэб клиент дээр.

Мөр функцууд StrBeginsC(), StrEndsTo()

Эдгээр функцууд нь мөр нь заасан дэд мөрөөр эхэлж байгаа эсэх, эсвэл тэмдэгт мөр нь заасан дэд мөрөөр төгссөн эсэхийг тодорхойлдог. Эдгээр функцүүдийн алгоритмыг суурилуулсан хэлээр хэрэгжүүлэхэд хэцүү биш боловч тэдгээрийн оршихуй нь илүү цэвэр, ойлгомжтой код бичих боломжийг олгодог. Мөн тэд илүү хурдан ажилладаг.

Жишээлбэл, тэдгээрийг If мэдэгдэлд ашиглахад тохиромжтой:

StrSplit(), StrJoin() мөрүүдтэй ажиллах функцууд

Эдгээр функцууд нь заасан хязгаарлагчийн дагуу мөрийг хэсэг болгон хуваадаг. Эсвэл эсрэгээр тэд хэд хэдэн мөрийг нэг болгон нэгтгэж, тэдгээрийн хооронд сонгосон тусгаарлагчийг оруулдаг. Эдгээр нь лог, технологийн бүртгэл үүсгэх, дүн шинжилгээ хийхэд тохиромжтой. Жишээлбэл, та технологийн бүртгэлийн оруулгыг цаашдын шинжилгээнд тохиромжтой хэсгүүдэд хялбархан задалж болно.

Мөртэй ажиллах функц StrFind()

Хуучин Find() функцийн оронд бид хэрэгжүүлсэн шинэ шинж тэмдэг, нэмэлт функцуудтай:

  • Янз бүрийн чиглэлд хайх (эхнээсээ, төгсгөлөөс);
  • Заасан байрлалаас хайх;
  • -тэй тохиолдлыг хайх заасан тоо(хоёр дахь, гурав дахь гэх мэт).

Үнэн хэрэгтээ энэ нь хуучин функцын чадварыг давхардуулдаг. Энэ нь хуучин хувилбаруудад эмхэтгэсэн модулиудтай нийцтэй байдлыг хадгалахын тулд хийгддэг. Хуучин Find() функцийг цаашид ашиглахгүй байхыг зөвлөж байна.

Шинэ хайлтын боломжуудыг ашиглах жишээг доор харуулав. URL дахь файлын бүтэн нэр гэх мэт албан ёсны мөрийн сүүлийн хэсэг хэрэгтэй үед арагш хайх нь ашигтай байдаг. Заасан байрлалаас хайх нь бүх мөрийг биш харин мэдэгдэж буй фрагментээс хайх шаардлагатай тохиолдолд тусалдаг.

1c суурилагдсан хэл дээрх 1C 8.3 дахь мөрүүд нь анхдагч төрлийн утгууд юм. Шугам. Энэ төрлийн утгууд нь дурын урттай Юникод мөрийг агуулна. Мөрний төрлийн хувьсагч нь хашилтанд орсон тэмдэгтүүдийн багц юм.

Жишээ 1. Тексттэй мөр хувьсагч үүсгэцгээе.

StringVariable = "Сайн уу ертөнц!";

1с дотор мөртэй ажиллах функцууд 8.3

Энэ хэсэгт мөрүүдийг 1 секундээр солих, эсвэл тэдгээрт агуулагдаж буй мэдээлэлд дүн шинжилгээ хийх боломжийг олгодог үндсэн функцуудыг өгөх болно.

StrLength

StrLength(<Строка>) . Параметрт дамжуулсан мөрөнд агуулагдах тэмдэгтүүдийн тоог буцаана.

Жишээ 2. “Сайн уу ертөнц!” гэсэн мөрийн тэмдэгтүүдийн тоог тоолъё.

String = "Сайн уу ертөнц!"; Тэмдэгтийн тоо = StrLength(String); Тайлан(Тэмдэгтийн тоо);

Энэ кодыг гүйцэтгэсний үр дүнд мөр дэх тэмдэгтүүдийн тоог харуулах болно: 11.

Товчилсон

Abbr(<Строка>) . Мөр дэх эхний чухал тэмдэгтийн зүүн талд ач холбогдолгүй тэмдэгтүүдийг тайруулна.
Ач холбогдолгүй дүрүүд:

  • орон зай;
  • тасрахгүй зай;
  • хүснэгт гаргах;
  • тэрэг буцах;
  • мөрийн орчуулга;
  • маягтын орчуулга (хуудас).

Жишээ 3. "Энх тайван!" "Сайн уу" гэсэн мөрийг хавсаргана уу.

Мөр = abbr("дэлхий!"); Мөр = "Сайн уу"+Мөр; Мэдэгдэл(Мөр);

Энэ кодыг гүйцэтгэсний үр дүнд "Сайн уу ертөнц!" гэсэн мөр гарч ирнэ.

Товчлол

товчлол(<Строка>) . Мөр дэх эхний чухал тэмдэгтийн баруун талд ач холбогдолгүй тэмдэгтүүдийг тайруулна.

Жишээ 4. "Сайн уу" ба "ертөнц!" "Сайн уу дэлхий!" гэсэн хэллэг.

Мөр = abbr("Сайн уу")+" "+abbr("дэлхий!"); Мэдэгдэл(Мөр);

Товчилсон LP

Товчилсон LP(<Строка>) . Мөр дэх эхний чухал тэмдэгтийн баруун талд ач холбогдолгүй тэмдэгтүүдийг тайрч, мөн тэмдэгт мөрийн эхний чухал тэмдэгтийн зүүн талд ач холбогдолгүй тэмдэгтүүдийг тайруулна. Энэ функцЭнэ нь илүү уян хатан байдаг тул өмнөх хоёроос илүү олон удаа ашиглагддаг.

Жишээ 5. Эсрэг талын нэрийн зүүн, баруун талд байгаа ач холбогдолгүй тэмдэгтүүдийг хас.

Гүйцэтгэгч = Directories.Contractors.FindBy Details("TIN", "0777121211"); ContractorObject = Contractor.GetObject(); ContractorObject.Description = товчилсон LP(ContractorObject.Description); ContractorObject.Write();

арслан

арслан(<Строка>, <ЧислоСимволов>) . Мөрний эхний тэмдэгтүүдийг авдаг, тэмдэгтүүдийн тоог параметрт заасан байдаг Тэмдэгтийн тоо.

Жишээ 6. Бүтэцийг үзье Ажилтанажилтны нэр, овог, овог нэрийг агуулсан байх. Овог болон эхний үсэг бүхий мөрийг аваарай.

InitialName = Арслан(Ажилтан.Нэр, 1); Овог нэрийн эхний үсэг = Арслан(Ажилтан.Өвгийн нэр, 1); Бүтэн нэр = Ажилтан.Овог + " " + Овог нэр + "." + Эцгийн нэр + ".";

Эрх

Баруун(<Строка>, <ЧислоСимволов>) . Мөрний сүүлчийн тэмдэгтүүдийг авдаг, тэмдэгтүүдийн тоог параметрт заасан байдаг Тэмдэгтийн тоо.Хэрэв заасан тэмдэгтийн тоо нь мөрийн уртаас хэтэрсэн бол мөрийг бүхэлд нь буцаана.

Жишээ 7. "Yyymmdd" форматтай огноог тэмдэгт мөрийн хувьсагчийн төгсгөлд бичээд огноотой мөрийг аваад төрөл рүү хөрвүүл. он сар өдөр.

Мөр = " Одоогийн огноо: 20170910"; StringDate = Rights(String, 8); Date = Date(StringDate);

Лхагва гараг

Лхагва гараг(<Строка>, <НачальныйНомер>, <ЧислоСимволов>) . Параметрт дамжуулсан мөрөөс дэд мөрийг авна Шугам, параметрт дугаар нь заасан тэмдэгтээс эхэлнэ Анхны дугаарба параметрт дамжуулсан урт Тэмдэгтийн тоо.Мөр дэх тэмдэгтүүдийн дугаарлалт 1-ээс эхэлнэ. Хэрэв параметр Анхны дугаартэгээс бага буюу тэнцүү утгыг зааж өгсөн бол параметр нь утгыг авна 1. Хэрэв параметр Тэмдэгтийн тоозаагаагүй бол мөрийн төгсгөл хүртэлх тэмдэгтүүдийг сонгоно.

Жишээ 8. Мөр хувьсагч нь есдүгээр байрлалаас эхлэн бүсийн кодыг агуулж байг, та үүнийг авч тусдаа мөрөнд бичнэ үү.

String = "Бүс нутаг: 99 Москва"; Бүс = Дундаж(Мөр, 9, 2);

PageFind

StrFind(<Строка>, <ПодстрокаПоиска>, <НаправлениеПоиска>, <НачальнаяПозиция>, <НомерВхождения>) . Мөр доторх заасан дэд мөрийг хайж олох ба олсон дэд мөрийн эхний тэмдэгтийн байрлалын дугаарыг буцаана. Энэ функцийн параметрүүдийг авч үзье.

  • Шугам. Эх сурвалжийн мөр;
  • SubstringSearch. Хүссэн дэд мөр;
  • Чиглэл хайх. Мөр дэх дэд мөрийг хайх чиглэлийг заана. Утга авч болно:
    • Хайлтын чиглэл. Эхнээс нь;
    • Чиглэл хайх. Төгсгөлөөс нь;
  • Эхлэх байрлал. Мөр дэх хайлтыг эхлүүлэх байрлалыг заана;
  • Оролтын дугаар. Эх мөр дэх хайсан дэд мөрийн тохиолдлын тоог заана.

Жишээ 9. "Сайн уу дэлхий!" гэсэн мөрөнд. "ба" тэмдэгтийн сүүлчийн тохиолдлын байрлалыг тодорхойлох.

PositionNumber = StrFind("Сайн уу Дэлхий!", "болон", SearchDirection.From End); Мэдэгдэл(Албан тушаалын дугаар);

Энэ кодыг гүйцэтгэсний үр дүн нь дэлгэцэн дээр "ба" тэмдэгтийн сүүлийн тохиолдлын дугаарыг харуулах болно: 9.

Vreg

VReg(<Строка>) . Заасан мөрийн бүх тэмдэгтийг 1s 8 болгон том үсгээр хөрвүүлнэ.

Жишээ 10. "Сайн уу ертөнц!" том үсгээр.

StringVreg = Vreg("Сайн уу ертөнц!"); Тайлан (StringVreg);

Энэ кодыг гүйцэтгэсний үр дүнд "HELLO WORLD!" гэсэн мөр гарч ирнэ.

HReg

HReg(<Строка>) . Заасан мөрийн бүх тэмдэгтийг 1s 8 болгон жижиг үсгээр хөрвүүлнэ.

Жишээ 11. "HELLO WORLD!" мөрийг хөрвүүл. жижиг үсгээр.

StringNreg = NReg("HELLO WORLD!"); Тайлан (StringVreg);

Энэ кодыг гүйцэтгэсний үр дүнд "Сайн уу ертөнц!" гэсэн мөр гарч ирнэ.

TReg

TReg(<Строка>) . Мөрийг дараах байдлаар хөрвүүлнэ: үг бүрийн эхний тэмдэгтийг том үсгээр, үгийн үлдсэн тэмдэгтүүдийг жижиг үсгээр хөрвүүлнэ.

Жишээ 12. “Сайн уу ертөнц!” гэсэн мөрт байгаа үгсийн эхний үсгийг томоор бичнэ үү.

StringTreg = TReg("Сайн уу ертөнц!"); Тайлан (StringTreg);

Энэ кодыг гүйцэтгэсний үр дүнд "Сайн уу Дэлхий!" гэсэн мөр гарч ирнэ.

Тэмдэг

тэмдэг(<КодСимвола>) . Юникод кодоор нь тэмдэгт авдаг.

Жишээ 13. "Сайн уу Дэлхий!" гэсэн мөрөнд баруун, зүүн хэсгийг нэмнэ үү. тэмдэг ★

StringWithStars = Тэмдэгт("9733")+"Сайн уу Дэлхий!"+Тэмдэгт("9733"); Тайлан (StringWithStars);

Энэ кодыг гүйцэтгэсний үр дүнд "★Сайн уу Дэлхий!★" гэсэн мөр гарч ирнэ.

Тэмдгийн код

Тэмдгийн код(<Строка>, <НомерСимвола>) . Хоёрдахь параметрт заасан байрлалд байрлах эхний параметрт заасан мөрөөс Юникод тэмдэгтийн кодыг авна.

Жишээ 14. “Hello World!” мөрийн сүүлчийн тэмдэгтийн кодыг олоорой.

String = "Сайн уу Дэлхий!"; Тэмдэгтийн код =Тэмдэгтийн код(мөр, мөр урт(мөр)); Мэдэгдэх(Тэмдэгтийн код);

Энэ кодын гүйцэтгэлийн үр дүн нь "!" тэмдгийн кодыг харуулах болно. - 33.

Хоосон мөр

хоосон мөр(<Строка>) . Мөр нь зөвхөн ач холбогдолгүй тэмдэгтүүдээс бүрдэх, өөрөөр хэлбэл хоосон байгаа эсэхийг шалгана.

Жишээ 15. Мөр хоосон, гурван зайнаас бүрдэж байгаа эсэхийг шалгана уу.

Хоосон = EmptyString(" "); Тайлан (хоосон);

Энэ кодыг гүйцэтгэсний үр дүнд "Тийм" гэсэн үг гарч ирнэ (логийн утгын мөрийн илэрхийлэл) Үнэн).

StrReplace

StrReplace(<Строка>, <ПодстрокаПоиска>, <ПодстрокаЗамены>) . Эх мөр дэх хайлтын дэд мөрийн бүх тохиолдлыг олж, түүнийг орлуулах дэд мөрөөр солино.

Жишээ 16. "Сайн уу дэлхий!" гэсэн мөрөнд. "Дэлхий" гэдэг үгийг "Найзууд" гэсэн үгээр солино.

String = StrReplace("Сайн уу Дэлхий!", "Дэлхийн", "Найзууд"); Мэдэгдэл(Мөр);

Энэ кодыг хэрэгжүүлсний үр дүнд "Сайн уу найзуудаа!" гэсэн мөр гарч ирнэ.

StrNumberRows

Str Шугамын тоо(<Строка>) . Олон мөрт мөрийн тоог тоолох боломжийг танд олгоно. 1s 8-д шинэ мөрөнд шилжихийн тулд тэмдгийг ашиглана Жич(мөр тэжээлийн тэмдэгт).

Жишээ 17. Текст дэх мөрийн тоог тодорхойл:
"Эхний мөр
Хоёр дахь мөр
гурав дахь мөр"

Тоо = StrМөрийн тоо("Эхний мөр"+Тэмдэгт.PS +"Хоёр дахь мөр"+Тэмдэгт.PS +"Гурав дахь мөр"); Тайлан (Тоо);

Энэ кодын гүйцэтгэлийн үр дүн нь текст дэх мөрийн тоог харуулах болно: 3

StrGetString

StrGetString(<Строка>, <НомерСтроки>) . Олон мөрт мөрийг дугаараар нь авдаг. Мөрийн дугаарлалт 1-ээс эхэлнэ.

Жишээ 18. Текстийн сүүлчийн мөрийг авна уу:
"Эхний мөр
Хоёр дахь мөр
гурав дахь мөр"

Текст = "Эхний мөр"+Тэмдэгт.PS +"Хоёр дахь мөр"+Тэмдэгт.PS +"Гурав дахь мөр"; LastLine = StrGetLine (Текст, Мөрийн тоо (Текст)); Мэдэгдэл(Сүүлийн мөр);

Энэ кодын гүйцэтгэлийн үр дүн нь "Гурав дахь мөр" гэсэн мөрийг харуулах болно.

StrNumberOccurrences

StrNumberOccurrences(<Строка>, <ПодстрокаПоиска>) . Мөр дэх заасан дэд мөрийн тохиолдлын тоог буцаана. Функц нь том жижиг үсгийн мэдрэмжтэй.

Жишээ 19. “c” үсэг “1s 8.3 ба 8.2 дахь мөр” гэсэн мөрөнд хэдэн удаа орж байгааг харгалзахгүйгээр тодорхойл.

Мөр = "1s 8.3 ба 8.2 дахь мөрүүд"; Тохиолдлын тоо = Str Тохиолдлын тоо(Vreg(String), "C"); тайлан (тохиолдлын тоо);

Энэ кодыг гүйцэтгэсний үр дүнд дэлгэцэн дээрх тохиолдлын тоог харуулна: 2.

PageBeginsFrom

StrEginsFrom(<Строка>, <СтрокаПоиска>) . Эхний параметрт өгөгдсөн мөр нь хоёр дахь параметрийн мөрнөөс эхэлж байгаа эсэхийг шалгана.

Жишээ 20. Сонгосон эсрэг талын TIN нь 1 тоогоор эхэлсэн эсэхийг тодорхойл. Хувьсагчийг үзье. эсрэг тал Эсрэг талууд.

TIN = Гүйцэтгэгч.TIN; StartsCUnits = StrStartsC(TIN, "1"); Хэрэв StartsFROM1 Дараа нь //Таны код EndIf;

Хуудас дуусна

StrEndsOn(<Строка>, <СтрокаПоиска>) . Эхний параметрт дамжуулсан мөр нь хоёр дахь параметрийн мөртэй төгсөж байгаа эсэхийг шалгана.

Жишээ 21. Сонгосон эсрэг талын TIN нь 2 тоогоор төгссөн эсэхийг тодорхойл. Хувьсагчийг үзье. эсрэг таллавлах элементийн холбоос хадгалагдана Эсрэг талууд.

TIN = Гүйцэтгэгч.TIN; Төгсгөл нь хоёр = Str төгсгөл нь (TIN, "2"); Хэрэв хоёроор төгссөн бол //Таны код EndIf;

Хуудас хуваах

StrDvide(<Строка>, <Разделитель>, <ВключатьПустые>) . Мөрийг заасан хязгаарлагч тэмдэгтээр хэсэг болгон хувааж, үүссэн мөрүүдийг массив руу бичнэ. Эхний параметр нь анхны мөрийг хадгалдаг, хоёр дахь параметр нь хязгаарлагчийг агуулсан мөрийг агуулдаг, гурав дахь параметр нь массив руу хоосон мөр бичих эсэхийг заадаг (анхдагчаар). Үнэн).

Жишээ 22. Бидэнд ";" тэмдгээр тусгаарлагдсан тоонуудыг агуулсан мөр байна гэж бодъё, мөрнөөс тооны массив ав.

Мөр = "1; 2; 3"; Массив = StrSplit(String, ";"); For Count = 0 By Array.Quantity() - 1 Loop Attempt Array[Count] = Number(Ablp(Massiv[Count])); Үл хамаарах массив[W] = 0; EndTry EndCycle;

Гүйцэтгэлийн үр дүнд 1-ээс 3 хүртэлх тоо бүхий массивыг авах болно.

StrConnect

StrConnect(<Строки>, <Разделитель>) . Хоёрдахь параметрт заасан хязгаарлагчийг ашиглан эхний параметрээс мөрийн массивыг массивын бүх элементүүдийг агуулсан мөр болгон хувиргана.

Жишээ 23. Өмнөх жишээн дэх тоонуудын массивыг ашиглан эх мөрийг ав.

For Count = 0 By Array.Quantity() - 1 Loop Array[Count] = String(Masiv[Count]); Төгсгөлийн мөчлөг; Мөр = StrConnect(Массив, "; ");

Мөр нь 1C:Enterprise 8 систем дэх анхдагч өгөгдлийн төрлүүдийн нэг юм. Төрөлтэй хувьсагчид шугамтекст агуулсан.

Хувьсах утгыг бичнэ үү шугамдавхар хашилтанд орсон байна. Энэ төрлийн хэд хэдэн хувьсагчийг нэмж болно.

Per1 = "Үг 1" ;
Per2 = "Үг 2" ;
Per3 = Per1 + " " + Per2 ;

Эцэст нь Нэг 3хамаагүй болно" Үг 1 Үг 2".

Нэмж дурдахад 1C: Enterprise 8 системүүд нь мөртэй ажиллах функцийг хангадаг. Голыг нь авч үзье:

EnterString(<Строка>, <Подсказка>, <Длина>, <Многострочность>) — Энэ функц нь хэрэглэгч утгыг зааж өгөх харилцах цонхыг харуулах зорилготой юм төрөл хувьсагч Шугам. Параметр <Строка> шаардлагатай бөгөөд оруулсан мөрийг бичих хувьсагчийн нэрийг агуулна. Параметр <Подсказка> нэмэлт нь харилцах цонхны гарчиг юм. Параметр <Длина> нэмэлт, оролтын мөрийн хамгийн их уртыг заана. Анхдагч нь тэг бөгөөд энэ нь хязгааргүй урт гэсэн үг юм. Параметр <Многострочность> сонголттой. Олон мөрт текст оруулах горимыг заана: Үнэн — мөр тусгаарлагчтай олон мөр текст оруулах; Худал - Энгийн мөр оруулна уу.

Юникод дахь тэмдэгтийн кодыг мэдсэнээр мөр оруулах боломжтой.

тэмдэг(<КодСимвола>) — Кодыг дугаар хэлбэрээр оруулсан болно.

Үсэг= Тэмдэг(1103 ); // I

Мөн тэмдэгтийн кодыг олох боломжийг олгодог урвуу функц байдаг.

Тэмдгийн код(<Строка>, <НомерСимвола>) — Заасан тэмдэгтийн Юникод дугаарыг тоо болгон буцаана.

Текст хөрвүүлэх функцууд:

VReg(<Строка>) - Мөр дэх бүх тэмдэгтийг том үсгээр хөрвүүлнэ.

HReg(<Строка>) - Мөр дэх бүх тэмдэгтийг жижиг үсэг рүү хөрвүүлнэ.

TReg(<Строка>) - мөрийн бүх тэмдэгтүүдийг гарчгийн том үсэг болгон хувиргадаг. Өөрөөр хэлбэл, бүх үгийн эхний үсгийг том үсгээр, үлдсэн үсгийг жижиг үсгээр хөрвүүлдэг.

Мөр дэх тэмдэгтүүдийг хайх, солих функцууд:

олох(<Строка>, <ПодстрокаПоиска>) - хайлтын дэд мөрийн тохиолдлын тэмдэгтийн дугаарыг олдог. Жишээлбэл:

Хай ("мөр", "нүд"); // дөрөв

StrFind(<Строка>, <ПодстрокаПоиска>, <НаправлениеПоиска>, <НачальнаяПозиция>, <НомерВхождения>) — хайлтын дэд мөрийн тохиолдлын тэмдэгтийн дугаарыг олдог, тохиолдлын дугаарыг харгалзах параметрт зааж өгсөн болно. Энэ тохиолдолд хайлт нь тоо нь параметрт заасан тэмдэгтээс эхэлдэг Эхлэх байрлал.Хайлтыг мөрийн эхнээс эсвэл төгсгөлөөс хийх боломжтой. Жишээлбэл:

№4 оруулга= StrFind( "Хамгаалалт", "o" , Хайлтын чиглэл. Нэгдүгээрт, 1, 4); // 7

StrReplace(<Строка>, <ПодстрокаПоиска>, <ПодстрокаЗамены>) Эх мөр дэх хайлтын дэд мөрийн бүх тохиолдлыг олж, түүнийг орлуулах дэд мөрөөр солино.

StrReplace("String" , "нүд" , "" ); // Хуудас

хоосон мөр(<Строка>) - тэмдэгт мөрийг шалгана. Хэрэв чухал тэмдэгт байхгүй эсвэл огт тэмдэгт байхгүй бол утгыг буцаана Үнэн. Үгүй бол - Худлаа.

StrNumberOccurrences(<Строка>, <ПодстрокаПоиска>) – эх мөрөнд хайлтын дэд мөрийн тохиолдлын тоог тооцоолно.

StrNumberOccurrences ( "Суралц, суралц, дахин суралц", "сурах" , "" ) ; // 3

StrTemplate(<Строка>, <ЗначениеПодстановки1>…<ЗначениеПодстановкиN> — Мөр дэх параметрүүдийг тоогоор нь орлуулна. Мөр нь "% 1..% N" маягтын орлуулах тэмдэглэгээг агуулсан байх ёстой. Тэмдэглэгээний дугаарлалт 1-ээс эхэлнэ. Хэрэв параметрийн утга Тэмдэглэгдээгүй, хоосон мөрийг орлуулна.

StrPattern ( "Хувилбар 1 = % 1, Сонголт 2 = % 2", "1" , "2" ) ; // Параметр 1= 1, Параметр 2 = 2

Мөр хувиргах функцууд:

арслан(<Строка>, <ЧислоСимволов>) мөрийн эхний тэмдэгтүүдийг буцаана.

Баруун(<Строка>, <ЧислоСимволов>) - мөрийн сүүлчийн тэмдэгтүүдийг буцаана.

Лхагва гараг(<Строка>, <НачальныйНомер>, <ЧислоСимволов>) - урттай мөрийг буцаана<ЧислоСимволов>, дүрээс эхэлнэ<НачальныйНомер>.

Abbr(<Строка>) тэмдэгт мөрийн эхний чухал тэмдэгтийн зүүн талд байгаа ач холбогдолгүй тэмдэгтүүдийг тайруулна.

товчлол(<Строка>) - тэмдэгт мөрийн сүүлчийн чухал тэмдэгтийн баруун талд байгаа ач холбогдолгүй тэмдэгтүүдийг таслана.

Товчилсон LP(<Строка>) - тэмдэгт мөрийн эхний чухал тэмдэгтийн зүүн талд, тэмдэгтийн сүүлчийн тэмдэгтийн баруун талд ач холбогдолгүй тэмдэгтүүдийг таслана.

StrGetString(<Строка>, <НомерСтроки>) – олон мөрийн мөрийг тоогоор нь авна.

Бусад онцлогууд:

StrLength(<Строка>) - мөр дэх тэмдэгтүүдийн тоог буцаана.

Str Шугамын тоо(<Строка>) - олон мөрт мөрийн тоог буцаана. Өмнөх мөрөөс шинэ мөрийн тэмдэгтээр тусгаарлагдсан мөрийг шинэ гэж үзнэ.

StrCompare(<Строка1>, <Строка2> ) - хоёр мөрт жижиг үсгийг мэдрэмжгүй харьцуулна. Функц нь объект шиг ажилладаг Үнэт зүйлсийг харьцуулах. Буцах:

  • 1 - хэрэв эхний мөр нь хоёр дахь мөрөөс их байвал
  • -1 - хоёр дахь мөр нь эхнийхээс их байвал
  • 0 - хэрэв мөрүүд тэнцүү бол

StrCompare("Эхний эгнээ" , "Хоёр дахь эгнээ" ); // нэг