SAP ABAP - Strings نصوص ساب

 SAP ABAP - Strings نصوص ساب

SAP ABAP - Strings نصوص ساب

SAP ABAP - Strings نصوص ساب

 المستخدمة على نطاق واسع في برمجة ABAP ، هي سلسلة من الأحرف.

نستخدم متغيرات البيانات من النوع C للاحتفاظ بالأحرف الأبجدية الرقمية ، بحد أدنى حرف واحد وحد أقصى 65.535 حرفًا. بشكل افتراضي ، يتم محاذاة هذه إلى اليسار.

خلق السلاسل

يُنشئ الإعلان والتهيئة التاليان سلسلة تتكون من كلمة "مرحبًا". حجم السلسلة هو بالضبط عدد الأحرف في كلمة "Hello".

Data my_Char(5) VALUE 'Hello'.

البرنامج التالي هو مثال على إنشاء السلاسل.

REPORT YT_SEP_15. 
DATA my_Char(5) VALUE 'Hello'. 
Write my_Char.

ينتج الكود أعلاه الناتج التالي -

Hello

طول سلسلة

من أجل إيجاد طول سلاسل الأحرف ، يمكننا استخدام جملة STRLEN . ترجع الدالة STRLEN () عدد الأحرف الموجودة في السلسلة.

مثال

REPORT YT_SEP_15. 
DATA: title_1(10) VALUE 'Tutorials',
      length_1 TYPE I. 
	
length_1 = STRLEN( title_1 ). 
Write: / 'The Length of the Title is:', length_1.

ينتج الكود أعلاه الناتج التالي -

The Length of the Title is: 9 

يدعم ABAP مجموعة كبيرة من العبارات التي تتعامل مع السلاسل.

التسلسلالبيان والوصف
1

CONCATENATE

يتم ربط سلسلتين لتشكيل سلسلة ثالثة.

2

CONDENSE

هذه العبارة تحذف أحرف المسافات.

3

STRLEN

يستخدم لإيجاد طول الحقل.

4

REPLACE

تستخدم لإجراء الاستبدالات في الأحرف.

5

SEARCH

لإجراء عمليات البحث في سلاسل الأحرف.

6

SHIFT

تستخدم لنقل محتويات سلسلة إلى اليسار أو اليمين.

7

SPLIT

يُستخدم لتقسيم محتويات الحقل إلى حقلين أو أكثر.

يستخدم المثال التالي بعض العبارات المذكورة أعلاه -

مثال

REPORT YT_SEP_15. 
DATA: title_1(10) VALUE 'Tutorials', 
      title_2(10) VALUE 'Point',
      spaced_title(30) VALUE 'Tutorials  Point  Limited',
      sep,
      dest1(30),
      dest2(30).
	
CONCATENATE title_1 title_2 INTO dest1. 
Write: / 'Concatenation:', dest1. 

CONCATENATE title_1 title_2 INTO dest2 SEPARATED BY sep. 
Write: / 'Concatenation with Space:', dest2. 

CONDENSE spaced_title.
Write: / 'Condense with Gaps:', spaced_title. 

CONDENSE spaced_title NO-GAPS. 
Write: / 'Condense with No Gaps:', spaced_title.

ينتج الكود أعلاه الناتج التالي -

Concatenation: TutorialsPoint 
Concatenation with Space: Tutorials Point 
Condense with Gaps: Tutorials Point Limited 
Condense with No Gaps: TutorialsPointLimited

ملاحظة -

  • في حالة التسلسل ، يُدرج عنصر "sep" مسافة بين الحقول.

  • تقوم عبارة CONDENSE بإزالة المسافات الفارغة بين الحقول ، مع ترك مسافة حرف واحد فقط.

  • تعد "NO-GAPS" إضافة اختيارية إلى عبارة CONDENSE التي تزيل جميع المسافات.