Гэр / Олон нийтийн сүлжээ / 1c мөрөнд байгаа хоёр дахь тохиолдлыг ол. Мөртэй ажиллах шинэ функцууд. Орон зайг хэрхэн арилгах вэ

1c мөрөнд байгаа хоёр дахь тохиолдлыг ол. Мөртэй ажиллах шинэ функцууд. Орон зайг хэрхэн арилгах вэ

String төрөл нь бүх програмчлалын хэлэнд байдаг. Энэ нь анхдагч бөгөөд 1С-д түүнтэй ажиллах олон функцууд байдаг. Энэ нийтлэлд бид илүү нарийвчлан авч үзэх болно янз бүрийн арга замууд 1С 8.3 ба 8.2 дахь мөрийн төрлүүдтэй жишээн дээр ажиллах.

Шугам

Аливаа төрлийн хувьсагчийг мөр болгон хөрвүүлэхийн тулд ижил нэртэй "String ()" функц байдаг. Оролтын параметр нь хувьсагч нь өөрөө байх ба түүний хэлхээний дүрслэлийг олж авах болно.

String(False) // "Үгүй"-г буцаана
String(12345) // "12 345"-г буцаана
String(CurrentDate()) //"2017.07.21 11:55:36"

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

Товчилсон LP, товчилсон L, товчилсон П

Эдгээр функцүүдийн оролтын параметрүүд нь мөрийн төрлийн хувьсагч юм. Функцууд нь ач холбогдолгүй тэмдэгтүүдийг (хоосон зай, тэрэгний буцах гэх мэт) устгадаг: зүүн ба баруун талаас, зөвхөн зүүн талаас, зөвхөн баруун талаас тус тус.

abbrl("Хоёр талын зайг арилгах болно") // "Хоёр талын зайг арилгах болно"
abbr("Хоёр талын зайг арилгах болно") // "Зүүн талын зайг арилгах болно"
abbr("Хоёр талын зайг арилгах болно") // "Баруун талд байгаа зайг арилгах болно"

Арслан, Баруун, Дунд

Эдгээр функцууд нь мөрний хэсгийг таслах боломжийг танд олгоно. Lion() функц нь мөрийн зүүн талд заасан уртын хэсгийг буцаана. "Right()" функц нь ижил төстэй боловч тайрах ажлыг баруун талд хийдэг. "Wed()" функц нь мөрийг сонгох тэмдэгтийн дугаар болон түүний уртыг зааж өгөх боломжийг олгодог.

Lion("String variable", 4) // "Stro"-г буцаана
Right("Мөр хувьсагч", 7) // "хувьсагч"-ыг буцаана
avg("Мөр хувьсагч", 2, 5)// "troco"-г буцаана

StrLength

Функц нь мөрийн хувьсагчид агуулагдах тэмдэгтүүдийн тоог тодорхойлдог.

StrLength("Word") // гүйцэтгэлийн үр дүн нь 5 тоо байх болно

Хай

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

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

Find("нэг, хоёр, нэг, хоёр, гурав", "хоёр") // функц нь 6 дугаарыг буцаана

Хоосон мөр

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

EmptyString("Василий Иванович Пупкин") // функц нь худал буцаана
EmptyString(" ") // функц нь Үнэнийг буцаана

VReg, NReg, TReg

Эдгээр функцууд нь мөрийн хувьсагчдыг харьцуулах, хөрвүүлэхэд маш хэрэгтэй байдаг. "Vreg()" нь эх мөрийг том үсгээр, "HReg()" жижиг үсгээр, "TReg()" нь үг бүрийн эхний тэмдэгтийг том үсгээр бичиж, дараагийн бүх тэмдэгтүүдийг жижиг үсгээр бичнэ.

VReg("ЕРӨНХИЙ ЗАХИРАЛ") // буцах утга - "ЕРӨНХИЙ ЗАХИРАЛ"
HReg("ЕРӨНХИЙ ЗАХИРАЛ") // буцах утга - "Гүйцэтгэх захирал"
TReg("ЕРӨНХИЙ ЗАХИРАЛ") // буцах утга - "Ерөнхий захирал"

StrReplace

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

StrReplace("улаан, цагаан, шар", ",", ";") // "улаан; цагаан; шар"

StrNumberRows

Функц нь текст хувьсагч дахь сүйх өгөгдлөөр тусгаарлагдсан мөрүүдийн тоог тодорхойлох боломжийг танд олгоно.

StrNumberRows функц нь 3 утгыг буцаадаг тул доорх жишээн дээрх гогцоо гурван тойргоор дамжих болно.

Ind \u003d 1-ийн хувьд Str Шугамын тоогоор ("Мөр1" + Тэмдэгтүүд.PS + "Мөр2" + Тэмдэгтүүд.PS + "Мөр3") давталт
<тело цикла>
Төгсгөлийн мөчлөг;

StrGetString

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

StrGetString("String1" + Symbols.PS + "String2" + Symbols.PS + "String3", 2) // "Мөр 2"-г буцаана

StrNumberOccurrences

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

StrNumberInstallations("a;b;c;d; ", ";") // функц нь 4-ийн тоог буцаана

Тэмдэг ба тэмдгийн код

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

SymbolCode("A") // функц нь 1 040 тоог буцаана
SymbolCode(1040) // функц нь "A"-г буцаана

Мөртэй ажиллах үед байнга хийдэг ажил

Мөрний холболт

Олон мөрийг (холбох) холбохын тулд нэмэх операторыг ашиглахад л хангалттай.

"1-р мөр" + "2-р мөр" //хоёр мөр нэмсний үр дүн нь "1-р мөр 2" болно

Төрөл хувиргалт

Төрөл, жишээ нь толь бичгийн элемент, тоо гэх мэтийг мөр болгон хөрвүүлэхийн тулд "String ()" функцийг ашиглахад хангалттай. "ShortLP()" гэх мэт функцууд нь хувьсагчдыг стринг болгон хувиргах боловч нэн даруй ач холбогдолгүй тэмдэгтүүдийг таслана.

String(1000) // "1000"-г буцаана

Тоог мөр болгон хөрвүүлэхдээ программ автоматаар мянганыг тусгаарлах зай нэмдэг болохыг анхаарна уу. Үүнээс зайлсхийхийн тулд та дараахь бүтцийг ашиглаж болно.

StrReplace(String(1000), Characters.NPP,"") // "1000"-г буцаана

Мөр(Формат(1000,"CH=")) // "1000"-г буцаана

Мөр дэх ишлэлүүд

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

Header = String("Horns and Hooves LLC is us!") // "Roga and Hooves LLC бол бид!"

Олон мөр, мөр таслах

Олон мөрт текст үүсгэхийн тулд түүнд мөр таслах тэмдэгтүүдийг (Symbols.PS) нэмэхэд хангалттай.

MultilineText = "Эхний мөр" + Тэмдэгтүүд.PS + "Хоёр дахь мөр"

Орон зайг хэрхэн арилгах вэ

Баруун эсвэл зүүн талд байгаа зайг арилгахын тулд та "Stretch()" (мөн "Scrpt()" болон "ScreenP()" функцийг ашиглаж болно:

StringWithoutSpaces = ShortLP(" Олон үсэг ") // функц нь "Олон үсэг" гэсэн утгыг буцаана.

Хэрэв тоог мөр болгон хөрвүүлсний дараа устгах хэрэгтэй тасрахгүй зай, дараах бүтцийг ашиглана уу:

StringWithoutSpaces = StrReplace(String(99999), Characters.NPP,"") // "99999"-г буцаана

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

StringWithoutSpaces = StrReplace(" сайн уу", " " ,"") // "сайн уу"-г буцаана

Мөрүүдийг бие биетэйгээ харьцуулах

Та нэр томъёог ердийн тэнцүү тэмдгээр харьцуулж болно. Харьцуулалт нь том жижиг жижиг үсгээр харьцдаг.

"сайн уу" = "сайн уу" // худал гэж буцна
"Сайн уу" = "Сайн уу" // Үнэнийг буцаана
"Сайн уу" = "Баяртай" // Худал гэж буцаана

Програмчлалын хэлний үндсэн шинж чанарууд нь ихэвчлэн тоонууд болон мөрүүдтэй ажиллахыг агуулдаг. Ихэвчлэн эдгээр функцууд нь хөрвүүлэгчийн кодонд холбогдсон байдаг (эсвэл програмчлалын хэлний "үндсэн" ангиуд хэрэгждэг).

1С-д мөрүүдтэй ажиллах чадварыг платформ дээр өөрөө програмчилдаг. Өнөөдөр бид 1С хэл дээрх програмууд дахь 1С мөрүүдтэй ажиллах онцлогуудыг авч үзэх болно.

Шугамын утга 1С

1. Хамгийн энгийнээс эхэлцгээе. Хувьсагч үүсгэж, түүнд тогтмол мөрийн утгыг оноох нь 1С-д дараах байдалтай байна.

Хувьсагч = "Сайн уу ертөнц!";

Хэрэв та 1С тогтмол мөрийн утгад ишлэлийн тэмдэгтийг зааж өгөхийг хүсвэл үүнийг хоёр дахин нэмэгдүүлэх хэрэгтэй ""

Хувьсагч = "Сайн уу, "дэлхий""!";

2. Мөр таслах 1С-ийг нэг дор хоёр аргаар зааж өгч болно. Эхнийх нь | тэмдгийг ашиглаж байна

Хувьсагч = "Сайн уу,
| ертөнц! ";

Хоёр дахь нь Symbols системийн дугаарыг ашиглаж байна. Энэ нь 1С мөрийн завсарлага болон TAB гэх мэт хэвлэхгүй бусад тэмдэгтүүдийг нэмэх боломжийг танд олгоно.

Хувьсагч = "Сайн уу" + Symbols.ps + "энх тайван!";

3. 1С дахь тохиргоог зөвхөн нэг хэл (Орос, Англи эсвэл бусад) төдийгүй хэд хэдэн хэл дээр нэгэн зэрэг боловсруулж болно. Энэ тохиолдолд одоо ашиглаж байгаа хэлийг 1С цонхны доод хэсэгт сонгоно.

Хэлний жагсаалт нь Ерөнхий/Хэлний салбар дахь тохиргооны цонхонд байрладаг. Хэл болгонд богино танигч байдаг enэсвэл eng.

Ийм тохиргоог програмчлахдаа 1С шугамууд нь олон хэлтэй байж болох нь тодорхой байна. Үүнийг хийхийн тулд дамжуулан зааж өгснөөр ийм 1С мөр үүсгэх боломжтой; Хэлний ID-ийн сонголтууд:

Хувьсагч = "ru=""Сайн уу, дэлхий!""; en=""Сайн уу, дэлхий! """;

Хэрэв та ердийнхөөрөө ийм байдлаар үүссэн 1С мөрийг ашиглавал дотор нь бичигдсэн зүйл байх болно. Систем үүнийг хоёр сонголт болгон хувааж, хүссэн хувилбараа ашиглахын тулд та NStr() функцийг ашиглах ёстой.

//хоёр хэлний тохиргоонд зөв
Тайлан(NStr(Хувьсагч));

1С төрлийн шугамтай тулгуур

Шаардлагатай зүйл бол лавлах / баримт бичгийн 1С талбар юм. Энэ нь 1С хэл дээрх програмын хувьсагчаас ялгаатай бөгөөд түүний төрлийг шинж чанарт (тоо, мөр 1С гэх мэт) яг зааж өгсөн байдаг. Хэрэв та тулгуур гэж юу болохыг олж мэдэх шаардлагатай бол дээрх зааварчилгааг үзээрэй.

Хэрэв та атрибутын төрлийг зааж өгвөл - мөр 1C, дараа нь нэмэлт параметрүүдийг зааж өгөх ёстой.

1С мөр нь хязгааргүй урттай (урт = 0 гэж заасан) ба хязгаарлагдмал урттай бөгөөд тэмдэгтүүдийн яг тоог заана. Хязгааргүй урттай 1С мөрүүд нь тусдаа SQL хүснэгтэд хадгалагддаг тул тэдгээрийн хэрэглээ нь хязгаарлагдмалтай харьцуулахад бүтээмж багатай байдаг.

Тийм ч учраас хязгааргүй урттай 1С утсыг ашиглах нь хязгаарлалттай байдаг - тэдгээрийг хаа сайгүй ашиглах боломжгүй юм. Жишээлбэл, энэ нь баримт бичгийн дугаар, лавлах код, хэмжилт зэрэг боломжгүй юм.

1С шугамтай ажиллах

Мөртэй ажиллахын тулд 1С платформ дээр хэд хэдэн суурилуулсан функцүүд байдаг.

  • AbbrLP("Итгэмээргүй, гэхдээ үнэн!")
    1С шугамаас хасна нэмэлт зай. Үүнийг мөн ямар ч төрлийг 1С мөр болгон хөрвүүлэхэд ашиглаж болно (жишээлбэл, тоо).
  • Хувьсагч = "Вася" + Abbrl("нэмэх") + "Оля"; //"Вася нэмэх Оля" байх болно
    1С-ийн хэд хэдэн утгыг нэгтгэх жишээ. Үр дүн нь нэг мөр 1C байна.
  • Хувьсагч = Арслан("Хөгжим", 2); // "Му" байх болно
    Хувьсагч = Дундаж("Хөгжим", 2, 2); // "ps" байх болно
    Хувьсагч = Эрх ("Хөгжим", 2); // "ка" байх болно
    1С мөрөөс дэд мөр авах янз бүрийн сонголтууд.
  • Хувьсагч = Find("Хөгжим", "ps"); //3 байх болно
    1-р тэмдэгтээс эхлэн 1С мөрөнд дэд мөр хайх.
  • Хувьсагч = StrLength("Хөгжим"); //6 байх болно
    1С мөр дэх тэмдэгтүүдийн тоог буцаана.
  • Мэдэгдэл("Сайн уу") //1С цонхны доод талд байгаа мессежийн хайрцагт
    alert("сайн уу") //попап харилцах цонх
    Status("Сайн уу") //зүүн доод талд байгаа статусыг харуулах мөрөнд
    .

Объектуудыг 1С мөрөнд оруулах

Таны мэдэж байгаагаар одоогийн байдлаар бүтэцлэгдсэн мэдээлэл солилцох хамгийн түгээмэл хэлбэр бол XML юм. Тэр ч байтугай Хамгийн сүүлийн үеийн хувилбар MS Office Wordболон Excel файлуудыг энэ форматаар хадгалдаг (docx ба xlsx тус тус өргөтгөлийг zip болгож өөрчлөх, архивлагчаар нээх).

Мэдээлэл солилцох 1С платформ нь хэд хэдэн сонголтыг санал болгодог бөгөөд тэдгээрийн гол нь XML юм.

1. Хамгийн энгийн арга бол ShortLP() эсвэл String() функцийг ашиглах явдал юм. Та асуулгын текстэд ТӨЛӨӨЛӨЛ() функцийг ашиглаж болно. Тэдний үйл ажиллагааны үр дүн ижил байна - тэд хэрэглэгчдэд зориулсан аливаа 1С объектын тэмдэгт мөрийг үүсгэдэг.

Анхдагч лавлахын хувьд энэ нь түүний нэр байх болно. Баримт бичгийн хувьд баримт бичгийн нэр, дугаар, огноо.

2. Аливаа 1С объектыг (хязгаарлалттай) XML болон эсрэгээр хөрвүүлэх боломжтой. Хөрвүүлэх процессыг цуваа болгох гэж нэрлэдэг.

ViewStringXml = XMLString(Утга); //1С утгаас XML авах
Утга1С = XMLValue(Төрөл("Каталогийн лавлагаа.Нэршил"),ViewStringXml); //XML мөрөөс 1С утгыг авахын тулд та хүлээн авах ёстой 1С-ийн төрлийг зааж өгөх ёстой.

3. 1С платформд дурын 1С объектыг стринг болгон хувиргах эх арга байдаг. Энэ нь 1С 7.7 хувилбараас шилжсэн. Энэ формат нь бусад програмуудад ойлгогддоггүй, гэхдээ өөр 1С-ийг ойлгодог бөгөөд энэ нь 1С мэдээллийн санг хооронд солилцоход ашиглахад хялбар болгодог.

Мөр = ValueInStringInt(Value1S); //1С утгаас 1С мөрийг авна
ValueToFile("C:\MyFile.txt", Value1C); //өөр нэг сонголт бол бид 1С утгаас хадгалсан мөр бүхий файлыг авах болно
Value1C = ValueFromStringInt(String); //1С мөрөөс буцах
Value1C = ValueFromFile("C:\MyFile.txt"); //файлаас буцах

Маягт дээрх 1С мөрүүдийг засах

1С программ дээр 1С мөрүүдтэй ажиллахаас гадна мэдээжийн хэрэг хэрэглэгч тэдгээрийг засварлах чадвартай байхыг хүсч байна. Үүнд хэд хэдэн боломж бий:

1. Хамгийн хялбар арга бол хүсэлтээр 1С шугамын оролтыг хүсэх явдал юм. Энэ аргыг 1С програмчлалыг заахдаа ашигладаг бөгөөд амьдралд энэ нь бага ашиглагддаг (гэхдээ үүнийг ашигладаг!).

Хувьсагч = "";
Мөр = EnterValue(Хувьсагч, "Бүтэн нэрийг оруулна уу");

2. 1С объектын дэлгэрэнгүй мэдээллийг (сангийн сан / баримт бичиг) эсвэл маягтын дэлгэрэнгүй мэдээллийг (харна уу) харуулахын тулд оролтын талбарыг ихэвчлэн ашигладаг. Энэ нь хэрэглэгчдэд засварлах талбаруудтай ажиллах 1С-ийн хамгийн түгээмэл хэрэгсэл юм.

3. Оролтын талбарын чадавхийг өргөтгөх боломжтой (оролтын талбарын шинж чанарыг харна уу, үүн дээр хулганы баруун товчийг дарж дэлгэрэнгүй мэдээлэл авна уу):

  • Олон мөр засварлах горимыг шалгах хайрцаг
  • Нарийвчилсан засварлах нүд (өмнөх нүдийг сонговол боломжтой)
  • Checkbox Нууц үг горим (харна уу).

4. Хэрэв оролтын талбарын бүх боломжууд танд хангалттай биш бол суулгасан засварлагч байдаг. Маягт руу нэмэхийн тулд Form / Insert Control цэсэнд талбар нэмэх шаардлагатай текст баримт бичиг. Түүний шинж чанарт та түүний ажиллах горимыг зааж өгч болно - Өргөтгөлийн шинж чанар.

Текст баримт бичгийн талбарыг өгөгдөлтэй шууд холбох боломжгүй. OnOpening() хэлбэрийн үйл явдал зохицуулагч дээр дараах функцийг бичих шаардлагатай (харна уу):

FormElements.ElementNameTextDocumentField.SetText(StringValue); //энд, ValueString нь атрибутаас хүлээн авсан текст юм

Хадгалах зохицуулагч дээр, жишээлбэл, Хадгалах товчлуур дээр хадгалалт нэмнэ:

ValueString = FormElements.ElementNameTextDocumentField.GetText(); //ValueString бол бидний утгыг хадгалдаг тулгуур юм

5. 1C хувилбарт 8.2.11, in удирдаж буй хэлбэрүүд, гарч ирэв шинэ боломжшугамын дүрслэл 1С - Форматлагдсан баримт бичгийн талбар.


Текст баримт бичгийн талбартай адил програмыг ашиглан текстийг өөрөө хадгалахдаа нээх, бичих үед тохируулах шаардлагатай.

  • Бидний хийж буй хэлбэр (лавлах ном, баримт бичиг, боловсруулалт гэх мэт) 1С объектод үнэ цэнийг хадгалах төрөл бүхий атрибут нэмнэ үү.
  • OnReadOnServer() функцэд атрибутаас текстийг тохируулна уу

    //энд Шаардлагатай бол 1С объектын нэмэлт шинж чанар юм
    //энд FormattedDocument нь засварлах маягтын талбарын нэр юм
    &Сервер дээр

    FormattedDocument = CurrentObject.Attributes.Get();
    Төгсгөлийн процедур

  • BeforeWriteOnServer() функц эсвэл товчлуур дээр дарж талбараас текст бичнэ үү

    &Сервер дээр
    Процедур OnReadingOnServer(CurrentObject)
    CurrentObject.Attributes = NewValueStorage(FormattedDocument);
    Төгсгөлийн процедур

ХЭСЭГ 1. АРГА ЗҮЙ (26).

1.1. Үндсэн аргууд (10). Бие даасан, тэдний энгийн алгоритм дээр суурилсан.

Str_Complete() (заасан тэмдэгтүүдтэй баруун зүүн жийргэвч).

Str_Inverse () (урвуу - баруунаас зүүн тийш тэмдэгтүүд).

Str_Codes() ("" тэмдэгтийн кодууд ба код бүхий массив)

Str_Symbols() ("-ээр тусгаарлагдсан кодуудын мөр эсвэл код бүхий массиваас)

Str_ReplaceCharacters() (нэг тэмдэгтийг нөгөө тэмдэгтээр солих).

Str_FromArray() (салгагчаар тусгаарлагдсан фрагментуудын массивын мөр)

Str_FindIn() (заасан оруулгын дугаартай дэд мөрийг (баруун талд оруулаад) хайх).

Str_FindGr() (Заасан тэмдэгтийн багцад орсон тэмдэгтүүдийн бүлэг хайх)

Str_FindNumber() (Баруун талд байгаа дугаарыг оруулаад хайх заасан тоотохиолдлууд)

Str_Interpret() (тогтоосон синтаксийн дагуу массив руу)

1.2. Үүсмэл аргууд (12). Үнэн хэрэгтээ энэ нь дөрвөн ерөнхий арга-алгоритмыг ашиглах явдал юм (2-р хэсгийг үзнэ үү)

Str_Number() (мөрний эхэн ба төгсгөлөөс эхлэн тоон бус тэмдэгтүүдээс "айх" хэрэггүй.

Str_Find() (заасан оролтын дугаар бүхий дэд мөрийг хайна уу (том үсгийн жижиг үсэг, баруун талд байгаа)).

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

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

Str_ReplacePiece() ("хэсэг" эх тэмдэгт мөрийг заасан мөрөөр солих).

Str_VArray() (хязгаарлагчийн заасан тохиолдлуудын хооронд (баруун талд байгаа ба жижиг том үсгийг оруулаад).

Str_MoveBySyllables() ("Хатуу" дэд мөрөнд хуваагдана, зураастай).

Str_MoveWords() ("Зөөлөн" дэд мөрөнд хуваагдана)

Str_Cut() ("Заасан урттай дэд мөр болгон таслах")

Str_Short() ("багасгасан" тэмдэгтүүдийн зүүн бүлгийг "орлуулах мөр"-өөр солино

Str_Short() ("багасгасан" тэмдэгтүүдийн баруун бүлгийг "орлуулах мөр"-өөр солино

Str_Short() ("багасгасан" тэмдэгтүүдийн дунд "орлуулах мөр"-өөр солино

Str_Expand (заасан тэмдэгтүүдийн тоог нэмэгдүүлэх замаар заасан урт хүртэл өргөтгөх)

1.3. Нарийвчилсан аргууд (3). Нарийвчилсан мэдээлэл бүхий хүснэгтэд шилжүүлэх шугамыг "бэлтгэх".

Str_inTableIn() (нуурласан тусгаарлагчийн системийн дагуу хүснэгтэд).

Str_inTableGroup (олон түвшний шүүлтүүрийн дагуу хүснэгтэд).

Str_inTableNumbers (тэдгээрийн хоорондох тоо, фрагмент бүхий хүснэгтэд).

2-Р ХЭСЭГ. ЕРӨНХИЙ АРГА-АЛГОРИМ (3).

Str_Entry() ("Олох" ба "Орлуулах" аргууд).

Str_Fragments() ("Piece", "ReplacePiece", "ToArray", "ToTableIn" аргууд).

Str_Short() ("Богино", "БогиноP", "Богино", "Өргөтгөх" аргууд.

Str_Split() ("Үгээр шилжих", "Үгээр шилжих", "Таслах" аргууд).

3-Р ХЭСЭГ. UNIVERSAL функц.

Энэ бол нэг төрлийн нөхцөлт програмчлалын интерфейс юм

Мөрт хэд хэдэн аргыг нэгэн зэрэг хэрэглэнэ. байдлаар хэрэгжүүлсэн

долоон параметртэй функцүүд ("Demo" нь энэ функц дээр суурилагдсан):

Str_(Арга, Дэд аргууд, Оролт, Парам1, Парам2, Урт_Байршил_Дугаар, Нэмэлт Гаралт)

Сонголтууд:

- "Арга" - хэд хэдэн "хосолсон" ба (эсвэл) нэг "онцгой" арга

(нэг тэмдэгтийн код эсвэл нэр, ","-ээр дамжуулан боломжтой)

- "Дэд аргууд" - хэд хэдэн "хосолсон" ба (эсвэл) "онцгой" сонголтууд

"онцгой" арга (нэг тэмдэгтийн код эсвэл нэр);

- "Оролт" - Мөр, эсвэл массив эсвэл утгын хүснэгт;

- "Param1" - хайлтын мөр, орлуулалт, хязгаарлагч, шүүлтүүр;

- "Param2" - солих мөр эсвэл тэмдэг;

- “Урт_тооны_байрлал” -Дугаар, Тоог тусгаарлагчаар эсвэл Тоо бүхий массиваар;

- "Гарах" - Тоо эсвэл мөр, массив эсвэл утгын хүснэгт;

Арга-дэд аргын нэр ба (эсвэл) нэг тэмдэгтийн код, түүнчлэн тоо

(Урт_байрлалын_тоо) ямар ч тохиолдолд салгаж болно

дараах хязгаарлагчдын аль нэг нь: ”, :;”.

ХЭСЭГ 4. ЗАРИМ ЖИШЭЭ.

HaveNumbersINString=(Str_FindNumbers(InString)<>Тэмдэглэгдээгүй);

HaveDigitsINString=(Str_FindGr(InString,"+0123456789")>0);

ThereLatin=(Str_FindGr(VxStr, Str_Interpret("lL"))>0);

HaveSpecifiedSigns=(Str_NfindGr(VxStr, "+ to hornYu.0p9")>0);

IsUnprintable=(Str_FindGr(VxStr, Str_Interpret("-l-L-r-R-P-Z-C"))>0);

ХЭСЭГ 5. ДҮГНЭЛТ.

Боломжтой бол шугамын дагуу нэг дамжуулалтаар удирддаг. Хоёр дахь дамжуулалт - ихэвчлэн аль хэдийн хэсгүүдэд байдаг. Суурилуулсан StrNumberOccurrences() функцийг ашиглаагүй.

Ашиглагдсан суулгасан функцууд: Зүүн (), Баруун () Дунд (), Урт урт ()

- (мөрийн хэсгийг байршуулах, сэргээх нь "хурдан" байх ёстой).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Number4 Entry= 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(<Строка>) тэмдэгт мөрийн эхний чухал тэмдэгтийн зүүн талд байгаа ач холбогдолгүй тэмдэгтүүдийг тайруулна.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

StrLength

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

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

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

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

Товчилсон

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

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

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

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

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

Товчлол

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

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

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

Товчилсон LP

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

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

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

арслан

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

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

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

Эрх

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

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

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

Лхагва гараг

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

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

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

PageFind

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

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

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

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

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

Vreg

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

Жишээ 10. "Hello world!" мөрийг хөрвүүл. том үсгээр.

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 = Contractor.TIN; StartsCUnits = StrStartsC(TIN, "1"); Хэрэв StartsFROM1 Дараа нь //Таны код EndIf;

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

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

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

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

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

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

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

Мөр = "1; 2; 3"; Массив = StrSplit(Мөр, ";"); 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(Массив, "; ");