كيفية إزالة الأحرف الخاصة من السلاسل في sas
أسهل طريقة لإزالة الأحرف الخاصة من سلسلة في SAS هي استخدام الدالة COMPRESS مع معدّل ‘kas’.
تستخدم هذه الوظيفة بناء الجملة الأساسي التالي:
data new_data;
set original_data;
remove_specials = compress (some_string, , ' kas ');
run ;
يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.
مثال: إزالة الأحرف الخاصة من السلسلة في SAS
لنفترض أن لدينا مجموعة البيانات التالية في SAS والتي تحتوي على أسماء مختلف الموظفين وإجمالي مبيعاتهم:
/*create dataset*/
data data1;
input name $sales;
datalines ;
Bob&%^ 45
M&$#@ike 50
Randy)) 39
Chad!? 14
Dan** 29
R[on] 44
;
run ;
/*view dataset*/
proc print data =data1;
لاحظ أن القيم الموجودة في عمود الاسم تحتوي على عدة أحرف خاصة.
يمكننا استخدام الدالة COMPRESS لإزالة هذه الأحرف الخاصة:
/*create second dataset with special characters removed from names*/
data data2;
setdata1 ;
new_name= compress (name, , ' kas ');
run ;
/*view dataset*/
proc print data =data2;
لاحظ أن عمود new_name يحتوي على القيم من عمود الاسم مع إزالة الأحرف الخاصة.
إليك بالضبط ما فعلته الدالة COMPRESS لإزالة هذه الأحرف الخاصة:
- يحدد k أننا نريد “الاحتفاظ” بأحرف معينة
- هدف للاحتفاظ بالأحرف الأبجدية
- تم تحديده للاحتفاظ بأحرف المسافات البيضاء
ملاحظة : يمكنك العثور على قائمة كاملة بالمعدلات الخاصة بوظيفة COMPRESS في صفحة وثائق SAS هذه.
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في SAS:
كيفية استخراج الأرقام من سلسلة في SAS
كيفية استخدام الدالة SUBSTR في SAS
كيفية تحويل السلاسل إلى أحرف كبيرة وصغيرة وحالة مناسبة في SAS