الدالتان EndsWith وStartsWith

ينطبق على: تطبيقات قماش تدفقات سطح المكتب Dataverse اعمدة الصيغة التطبيقات المستندة إلى النماذج Power Platform CLI

اختبار ما إذا كانت السلسلة النصية تبدا أو تنهي سلسله نصيه أخرى.

‏‏الوصف

تقوم وظيفة EndsWith باختبار ما إذا كان هناك سلسلة نص واحدة تنتهي بأخرى أم لا.

تقوم وظيفة StartsWith باختبار ما إذا كان هناك سلسلة نص واحدة تبدأ بأخرى أم لا.

بالنسبة لكلا الوظيفتين، فان الاختبارات تكون غير حساسة لحاله الأحرف. وتكون قيمة الإرجاع لكل منهما هي القيمة المنطقية صواب أو خطأ.

استخدم EndsWith وStartsWith مع وظيفة Filter للبحث عن البيانات داخل تطبيقك. يمكنك أيضًا استخدام عامل في أو وظيفة Search للبحث في أي مكان داخل السلاسل النصية، ليس فقط في البداية أو النهاية. سيعتمد اختيارك للوظائف علي احتياجات تطبيقك وأي الوظائف يمكن تفويضها لمصدر البيانات الخاصة بك. إذا تعذر تفويض إحدى هذه الوظائف ، فسيظهر تحذير تفويض في وقت التأليف لتحذيرك من هذا القيد.

بناء الجملة

EndsWith( Text, EndText )

  • Text – مطلوب. النص المراد اختباره.
  • EndText – مطلوب. النص المراد البحث عنه في نهاية النص. إذا كان EndText سلسلة فارغة، ويقوم EndsWith بإرجاع صواب.

StartsWith( Text, StartText )

  • Text – مطلوب. النص المراد اختباره.
  • StartText – مطلوب. النص المراد البحث عنه في بداية النص. إذا كان StartText سلسلة فارغة، ويقوم StartsWith بإرجاع صواب.

الأمثلة

صيغة ‏‏الوصف نتيجة
EndsWith( "Hello World", "world" ) اختبار ما إذا كانت ‏"Hello World" تنتهي بـ ‏"World". الاختبار غير حساس لحالة الأحرف. true
EndsWith( "Good bye", "good" ) اختبار ما إذا كان "‏Good bye" ينتهي بـ "‏good". تظهر وسيطة EndText وهي ("good") في النص وليس في النهاية. false
EndsWith( "Always say hello", "hello" ) اختبار ما إذا كانت ‏"Always say hello" تنتهي بـ ‏"hello". true
EndsWith( "Bye bye", "" ) اختبار ما إذا كان "‏Bye bye" ينتهي بسلسلة نصية فارغة (يقوم Len بإرجاع 0). بعد تسهيل استخدامها في تعبيرات Filter، تم تحديد EndsWith لإرجاع صواب في هذه الحالة. true
صيغة ‏‏الوصف نتيجة
StartsWith( "Hello World", "hello" ) اختبار ما إذا كانت ‏"Hello World" تبدأ بـ ‏"hello". الاختبار غير حساس لحالة الأحرف. true
StartsWith( "Good bye", "hello" ) اختبار ما إذا كانت ‏"Good bye" تبدأ بـ ‏"hello". false
StartsWith( "Always say hello", "hello" ) اختبار ما إذا كانت ‏"Always say hello" تبدأ بـ ‏"hello". على الرغم من ظهور "‏hello" في النص، فانه لا يظهر في البداية. false
StartsWith( "Bye bye", "" ) اختبار ما إذا كان "‏Bye bye" يبدأ بسلسلة نصية فارغة (يقوم Len بإرجاع 0). بعد تسهيل استخدامها في تعبيرات Filter، تم تحديد StartsWith لإرجاع صواب في هذه الحالة. true

تجربة البحث عن المستخدم

في العديد من التطبيقات، يمكنك كتابة حرف أو أكثر في مربع البحث لتصفية قائمة السجلات في مجموعة بيانات كبيرة. أثناء الكتابة، تعرض القائمة فقط تلك السجلات التي تطابق معايير البحث.

توضح الأمثلة في بقية هذا الموضوع نتائج البحث في قائمة العملاء، والتي تحتوي على هذه البيانات:

مثال على قائمة العملاء.

لإنشاء مصدر البيانات هذا كمجموعة، أنشئ عنصر تحكم Button وقم بتعيين خصائص OnSelect الخاص به إلى هذه الصيغة:

ClearCollect(Customers, Table({ Name: "Fred Garcia", Company: "Northwind Traders" }, { Name: "Cole Miller", Company: "Contoso" }, { Name: "Glenda Johnson", Company: "Contoso" }, { Name: "Mike Collins", Company: "Adventure Works" }, { Name: "Colleen Jones", Company: "Adventure Works" }) )

كما هو موضح في هذا المثال، يمكنك إظهار قائمة بالسجلات الموجودة في عنصر تحكم Gallery في الجزء السفلي من الشاشة. بالقرب من أعلى الشاشة، يمكنك إضافة عنصر تحكم Text input تُسمى SearchInput‎، بحيث يمكن للمستخدمين تحديد السجلات التي تثير اهتمامهم.

معرض العملاء.

عندما يكتب المستخدم الأحرف في SearchInput، تتم تصفية النتائج في المعرض تلقائيًا. في هذه الحالة ، يتم تكوين المعرض لإظهار السجلات التي يبدأ فيها اسم العميل (وليس اسم الشركة) بتسلسل الأحرف في SearchInput.إذا كتب المستخدم co في مربع البحث، يُظهر المعرض هذه النتائج:

معرض العملاء مع البحث.

للتصفية استنادًا إلى عمود الاسم، قم بتعيين خاصية Items الخاصة بعنصر تحكم gallery إلى إحدى هذه الصيغ:

صيغة ‏‏الوصف نتيجة
Filter( Customers, StartsWith( Name, SearchInput.Text ) ) تصفية مصدر بيانات العملاء للسجلات التي تظهر فيها سلسلة البحث في بداية عمود الاسم. الاختبار غير حساس لحالة الأحرف. في حالة قيام المستخدم بكتابة co في مربع البحث، tسيعرض المعرض Colleen Jones وCole Miller. لا يعرض المعرض Mike Collins لأن عمود الاسم لهذا السجل لا يبدأ بسلسلة البحث. مثال على StartsWith.
Filter( Customers, SearchInput.Text in Name ) تصفية مصدر بيانات العملاء للسجلات التي تظهر فيها سلسلة البحث في أي موضع في عمود الاسم. الاختبار غير حساس لحالة الأحرف. في حالة قيام المستخدم بكتابة co في مربع البحث، يعرض المعرض Colleen Jones،Cole Miller،Mike Collins لأن سلسلة البحث تظهر في أي موضع في عمود الاسم لجميع هذه السجلات. مثال على SearchInput.Text في الاسم.
Search( Customers, SearchInput.Text, "Name" ) وبنفس طريقة استخدام عامل in، تبحث وظيفة Search عن تطابق في أي موضع داخل عمود الاسم لكل سجل. لاحظ أنه يجب إحاطة اسم العمود بعلامات اقتباس مزدوجة. مثال على SearchInput.Text مع الاسم.

يمكنك توسيع نطاق البحث ليشمل عمود الشركة فضلاً عن عمود الاسم:

صيغة ‏‏الوصف نتيجة
Filter(Customers, StartsWith(Name, SearchInput.Text) || StartsWith(Company, SearchInput.Text) ) تصفية مصدر بيانات العملاء للسجلات التي يبدأ فيها عمود الاسم أو عمود الشركة بسلسلة البحث (على سبيل المثال، co). ||عامل التشغيل هو صواب إذا كانت أي وظيفة StartsWith هي صواب. التصفية باستخدام StartsWith.
Filter(Customers, SearchInput.Text in Name || SearchInput. Text in Company) تصفية مصدر بيانات العملاء للسجلات التي يحتوي فيها عمود الاسم أو عمود الشركة على سلسلة البحث (على سبيل المثال، co) في أي موضع بها. التصفية مع نص البحث في الاسم.
Search( Customers, SearchInput.Text, "Name", "Company" ) بنفس طريقة استخدام عامل in، تبحث وظيفة Search عنمصدر بيانات العملاء للسجلات التي يحتوي فيها عمود الاسم أو عمود الشركة على سلسلة البحث (على سبيل المثال، co) في أي موضع فيها. وظيفة Search أسهل في القراءة والكتابة من وظيفة Filter إذا كنت تريد تحديد أعمدة متعددة وعوامل in متعددة. لاحظ أنه يجب إحاطة أسماء الأعمدة بعلامات اقتباس مزدوجة. التصفية مع نص البحث في الاسم، الشركة.