إنتقال للمحتوى

  • تسجيل الدخول عبر الفيس بوك تسجيل الدخول عبر تويتر Log In with LinkedIn Log In with Google      تسجيل دخول    
  • إنشاء حساب

صورة
- - - - -

Function لحساب عدد الكلمات في تص


لا توجد ردود على هذا الموضوع

#1 هانى سند

هانى سند

    مشرف سابق وعضو مميز

  • المجموعة الماسية
  • 743 مشاركة

تاريخ المشاركة 24 February 2007 - 01:41 AM

السلام عليكم و رحمة الله و بركاته

إخواني الكرام

موعدنا مع function اخري تقوم بعد الكلمات الموجودة في نص

الكود:


CREATE OR REPLACE FUNCTION count_words (
   p_data   VARCHAR2
)
   RETURN VARCHAR2 IS
   v_data	VARCHAR2 (2000) := single_space (p_data);
   v_count   NUMBER		  := 0;
--
BEGIN
   FOR i IN 1 .. LENGTH (v_data) LOOP
	  IF substr (v_data, i, 1) = ' ' THEN
		 v_count := v_count + 1;
	  END IF;
   END LOOP;

   RETURN v_count;
END count_words;
/


غرض و كيفية الاستخدام :


من الممكن ان تستخدم هذه الفانكشن في عد الكلمات في برقية لنظام برقيات حتي يمكن حساب كلفة البرقية حيث عادة يتم اتساب كلفة البرقية عن طريق عدد كلماتها و هي تعتمد علي عد المسافات الموجودة بالنص حيث عادة ما يفرق بين كل كلمةو اخري هو مسافة و اذا كان هناك مسافات مزدوجة يمكن ازالتها اولا عن طريق استعمال الفانكشن السابقة single-space اذا لم يكن مرغوبا فيها و من الممكن ان تستخدم لأغراض اخري بالطبع ايضا من الممكن ان يتم نداؤها من جملة استعلام او كفانكشن عادية

شرح الfunction :

تعتمد الفانكشن علي تقسم حروف النص في لوب ينتهي بانتهاء اخر حرف و فحص اذا كان الحرف الحالي هو مسافة فيتم زيادة متغير يحمل عدد الكلمات بواحد حتي ينتهي اللوب

الملف بالمرفقات

مع تمنياتي بالتوفيق

ملفات مرفقة

  • ملف مرفق  count_words.txt   1002بايت   168 عدد مرات التحميل