PDA

View Full Version : سوال: تشخیص فارسی و انگلیسی ازهم



SHD.NET
پنج شنبه 25 آبان 1391, 12:33 عصر
سلام . من یه متن دارم . توش کلمات انگلیسی و فارسی مخلوطه . میخواستم ببینم چجوری برنامه میتونه این دوتا رو از هم تشخیص بده و هر کدومو جداگانه توی لیست بیاره ؟

ممنون

h_a_m_i_d
پنج شنبه 25 آبان 1391, 14:05 عصر
سلام دوست عزیز اینم پروژه ای که میخواستی
اینم پروژش امیدوارم کمکت کنه

SHD.NET
پنج شنبه 25 آبان 1391, 16:35 عصر
/ممنونم به خاطر پروژتون . اما نمیشه کاری کرد که به صورت کلمه جدا کنه ؟

چون این برنامه به صورت حرف حرف جدا می کنه . اگه این کارو بشه کرد کار من راه میفته.

ممنون

asghar2008
پنج شنبه 25 آبان 1391, 20:38 عصر
سلام
این قطعه کد برای جدا کردن کلمات انگلیسی از فارسی هستش. تو همون برنامه بالا ؛تو رویداد کلیک کپی کن.


Dim str, tash As String
Dim word As String()
str = txttext.Text
word = str.Split(New Char() {"(", ")", ".", "!", "?", " "})
For Each wrd In word
tash = wrd.Substring(1, 1)
If add.ezafe(tash) = "en" Then
lstenglish.Items.Add(wrd)
Else
lstfarsi.Items.Add(wrd)
End If
Next

SHD.NET
جمعه 26 آبان 1391, 00:14 صبح
سلام

بابت برنامه ممنون

اما برنامه چندتا مشکل داشت :

1- بعد پیداکردن چند تا کلمه و تشخیص اونها اررو می داد (دلیلش رو نمی دونم)

2- برنامه فقط کلمه هایی که بینشون space بود رو از هم تشخیص می داد و جدا می کرد . برای مثال این 2 تا کلمه رو نمی تونست از هم جدا کنه:

salamدنیا

اگ این 2 تا مشکلو بتونید برطرف کنید برنامه خیییییییییییییییییلی عالی میشه و دقیقا کار من راه میفته

ممنون

asghar2008
جمعه 26 آبان 1391, 11:16 صبح
سلام بر دوستان
کد رو تغییر دادم.برنامه رو همینجا آپلود میکنم.

95005
95006

Dim str As String

Dim word As String()
str = txtword.Text
word = str.Split(New Char() {"(", ")", ".", "!", "?", " "})
For Each wrd In word
Dim tashEN As String = ""
Dim tashFA As String = ""
For i = 1 To Len(wrd)
Dim s As String
s = Mid(wrd, i, 1)
If FaEn.tashkhis(s) = "en" Then
tashEN += s
Else
tashFA += s
End If

Next i
lstfa.Items.Add(tashFA)
lsten.Items.Add(tashEN)
Next