• 0
khiro rca

سؤال لم أجد له إجابة - طريقة برمجة مترجم نصوص

سؤال

السلام عليكم

إخواني - أعضاء أكبر منتدى عربي للبرمجة - والأغزر بالنجاحات

آمل أن أجد عند إخواني الإجابة عن سؤال بحثت عنه طويلا

السؤال:

- كيف يمكنني برمجة مترجم نصوص بالدلفي؟؟؟

مترجم نصوص دفعة واحدة وليس كلمة كلمة

مثل الوافي الذهبي أو مترجم غوغل - لكن ليس بالنت أو ما شابه بل بالإعتماد على قاعدة بيانات أو ملف نصي موجود في جهازي

ولابأس بسورس برنامج مشابه .

أرجو أن يكون هناك إجابة تمكنني من مواصلة دربي

وجزاكم الله خيرا ولكم دعوات مني في الصلاة

بارك الله فيكم وأنتظر إجابتكم إخواني.....

أخوكم خيرالدين من الجزائر.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

5 إجابة على هذا السؤال .

  • 0

أهناك حل إخواني؟؟؟

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اخي الكريم هذا المشروع ليس بالسهل و ليس بالمستحيل في الوقت ذاته ؛

من ناحية البرمجة سوف يتطلب منك درجة عالية من البرمجة لماذا لانك سوف تتعامل من :

Text Parsing , ويمكن بعض تقنيات ال hooking. التعامل الجيد مع الملفات النصية اذا اردت استعمالها كقواعد بيانات , و هنا يمكن ان ندخل بعض الشئ في ال Binary Trees وخاصة ال Balanced B-Trees وهذا بدوره سوف ياخذك الى التفكير في سرعة تحميل قواعدة البيانات والقيام بال Parsing و الى ماذلك من عمليات .... الخ

ناحية اللغة يجب التحكم التام في اللغات المراد استعمالها من قواعد التصريف ....الخ

ولكن كما قلت سابقا ليس مستحيل القيام به ...

يمكنك البداء في المشروع وسوف تجد من يساعدك بذلك باذن الله .

والله المستعان

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بارك الله فيك أخي على تفاعلك

ما أريده بالضبط ليس مترجما لأستعمله لترجمة اللغات لنفهمها - وإنما سأستعمله لغرض برمجي آخر بسيط

والمترجم لن يحوي على أكثر من 100 كلمة

------------

وجدت هذا الكود بالـ++C وسيعينني على عملي لكن لم أستطع تحويله للدلفي لأكمل العمل - ولا أعرف السي ++

هذا هو الكود (يقوم بوضع كل كلمة في سطر إنطلاقا من جملة)

int main()
{
string strtext("khiro c++ delphi");
int iLength = strtext.length();
for (int i=0;i<=iLength;i++)
{ if (!(strtext[i]==' '))
{
cout<<strtext[i];
}
else
cout<<endl;
}
return 0;
}

**********

وهذه محاولتي لتحويله للدلفي لكني أخفقت لأنه يقوم بوضع كل حرف في سطر

   var text:string;
ilengt,i :Integer;
//---------------------------
begin
i:=0;
text:='khiro c++ delphi' ;
ilengt:=length(text); ;
//---------------------------
for i := 0 to ilengt do
begin
if text[i]<>(' ') then
Writeln(text[i]) ;

end;
Readln;
end.

هل من خبير في اللغتين معا؟؟؟

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

جرب هذا :

uses HTTPUtil;

procedure TForm1.Button2Click(Sender: TObject);
var
LTokenizer: IStringTokenizer;
begin
memo1.Clear;
LTokenizer := StringTokenizer('khiro c++ delphi', ' ');
while LTokenizer.hasMoreTokens do
memo1.Lines.Add(LTokenizer.nextToken);
end;

والله المستعان

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

جرب هذا :

uses HTTPUtil;

procedure TForm1.Button2Click(Sender: TObject);
var
LTokenizer: IStringTokenizer;
begin
memo1.Clear;
LTokenizer := StringTokenizer('khiro c++ delphi', ' ');
while LTokenizer.hasMoreTokens do
memo1.Lines.Add(LTokenizer.nextToken);
end;

والله المستعان

----------------------------

بارك الله فيك أخي - أفرحتني بردك

مع بعض التعديلات نتج التالي أخي

procedure TForm1.Button2Click(Sender: TObject);

var LTokenizer: IStringTokenizer;
begin
memo1.Clear;
LTokenizer := StringTokenizer(Memo2.Text,' ');
while
LTokenizer.hasMoreTokens do memo1.Lines.Add(LTokenizer.nextToken);

end;

بارك الله فيك أخي مجددا

ستتم إضافتك لقائمة الأصدقاء أخي...

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .