الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة في StringTokenizer

مغلق
بدأه MKSoft في 5 نوفمبر 2006 · 2 رد · 651 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم إخواني :

قمت إخواني بكتابة الكود الذي سترونه , والهدف منه هو تقسيم النص إلى Tokens , على حسب كل من : المسافات , وإشارة يساوي "=" , وإشارة ":" ,

ولكن هناك شرط بسيط وهو : إذا أتت إشارة يساوي "=" وراء إشارة ":" , فيجب أن يتم أخذهما ككلمة واحدة ":=" ,

مثال

 5:=5

فيجب أن يكون الناتج :

 5	 :=	 5

.

لكن المشكلة في الكود , انه إذا قمت بكتابة أي رقم أو أي كلمة وراء هذه الإشارة ":" غير إشارة اليساوي , فإن هذا الرقم أو الكلمة لا تظهر, إليكم الكود والنتائج .

الكـــــــــــود:

import java.util.*;
import javax.swing.*;
public class TokenizerTest
{
	public static void main(String[]args)
	{
		JTextArea jt=new JTextArea(30,30);
		JOptionPane.showMessageDialog(null,jt);

		StringTokenizer token=new StringTokenizer(jt.getText()," :=",true);
		while(token.hasMoreTokens())
		{
			String str=token.nextToken();

			if(str.equals(":"))
			{
				StringTokenizer temp=token;
				if(temp.hasMoreTokens())
				{
					String strTemp=	temp.nextToken();
					if(strTemp.equals("="))
					str=str.concat(strTemp);
				}
			}
			System.out.println(str);
		}
	}

}

النتــــــائج:

إذا قمت بإدخال النص التالي في البرنامج

 5=5 20:=20 15:25

كان من المنظقي أن يكون الجواب كالاتي :

5
=
5

20
:=
20

15
:
25

لكن الجواب يكون كالاتي :

5
=
5

20
:=
20

15
:

تم تعديل هذه المشاركة بواسطة MKSoft في 5 نوفمبر 2006 في 22:51

#2

كإنك طرحت نفس المشكلة سابقا في الرابط وأجبناك :

اقتباس
StringTokenizer سيقسم لك على اساس حروف الكلمة Hello ولن يعترف بها بأي شكل من الأشكال كوحدة واحدة للتقسيم

استغنى عن خدمات الصف StringTokenizer واستخدم الطريقة split الخاصة بالصف String

سيمضي ركبنا العملاق لن يركع .. بإيمان لغير الحق لا يصدع

عزيزا شامخا كالمجد بل أروع .. فسجل أيها التاريخ ما تسمع :

فلسطين لنا الآمال والمطمع .. نعاهد أن نحررها وأن ترجع

ونقسم نستعيد الأرض أو نصرع .. ويبقى رمزنا الزيتون والمدفع

Palestine.gif

#3

شكرا nardien28

أنا أقوم بتصميم Compiler بسيط , وقد صممت معظم الكود باستخدام StringTokenizer ,

لذلك أنا أريد استخدام StringTokenizer . ضروري تساعدوني ولكم مني كل الشطر

هذا الموضوع مغلق.

مواضيع مشابهة