امیرنیوکی 147 ارسال شده در 29 اسفند، ۱۳۹۳ اشتراک گذاری ارسال شده در 29 اسفند، ۱۳۹۳ سلام دیدم یکی از دوستان سوال پرسیده بود که چطور تشخیص بدیم متن ما انگلیسی هست یا فارسی خوب کافیه از متد boolean استفاده کنیم من اینجا تشخیص عدد ، انگلیسی و فارسی بودن رو نوشتم ابتدا Private Button1 As Button Private EditText1 As EditText حالا میایم متد مربوط رو مینویسیم Sub checknumber(str As String) As Boolean Dim i As Int Dim j As Int = 0 For i = 0 To str.Length - 1 Select str.CharAt(i) Case "0" j = j +1 Case "1" j = j +1 Case "2" j = j +1 Case "3" j = j +1 Case "4" j = j +1 Case "5" j = j +1 Case "6" j = j +1 Case "7" j = j +1 Case "8" j = j +1 Case "9" j = j +1 Case "." j = j +1 End Select Next If j = str.Length Then Return True End If Return False End Sub تو این متد میایم استرینگی که وارد متد میشه رو با یه حلقه میچرخیم توش یه متغییر عددی میسازیم و با دستور select حروفی رو ک تو حلقه داره میچرخه داخل دستور select میکنیم اگه حروف یکی از از حروفی ک ما مشخض کردیم باشه متغییر عددی خودمون + 1 میکنیم بعد از اتمام حلقه با یه دستور if میگیم اگه متغییر عددی j برابر با اندازه استرینگ str بود داده برگشت داده true باشه اگه false باشه اینم متد تشخیص حروف انگلیسی Sub checkCharecter(str As String) As Boolean str = str.ToLowerCase Dim i As Int Dim j As Int = 0 For i = 0 To str.Length - 1 Select str.CharAt(i) Case "a" j = j +1 Case "b" j = j +1 Case "c" j = j +1 Case "d" j = j +1 Case "e" j = j +1 Case "f" j = j +1 Case "g" j = j +1 Case "h" j = j +1 Case "i" j = j +1 Case "j" j = j +1 Case "k" j = j +1 Case "l" j = j +1 Case "m" j = j +1 Case "n" j = j +1 Case "o" j = j +1 Case "p" j = j +1 Case "q" j = j +1 Case "r" j = j +1 Case "s" j = j +1 Case "t" j = j +1 Case "u" j = j +1 Case "v" j = j +1 Case "w" j = j +1 Case "x" j = j +1 Case "y" j = j +1 Case "z" j = j +1 Case "." j = j +1 End Select Next If j = str.Length Then Return True End If Return False End Sub توضیحات این متد مثل متد بالاست اینم متد تشخیص حروف فارسی Sub checkFarsiCharecter(str As String) As Boolean str = str.ToLowerCase Dim i As Int Dim j As Int = 0 For i = 0 To str.Length - 1 Select str.CharAt(i) Case "a" j = j +1 Case "b" j = j +1 Case "c" j = j +1 Case "d" j = j +1 Case "e" j = j +1 Case "f" j = j +1 Case "g" j = j +1 Case "h" j = j +1 Case "i" j = j +1 Case "j" j = j +1 Case "k" j = j +1 Case "l" j = j +1 Case "m" j = j +1 Case "n" j = j +1 Case "o" j = j +1 Case "p" j = j +1 Case "q" j = j +1 Case "r" j = j +1 Case "s" j = j +1 Case "t" j = j +1 Case "u" j = j +1 Case "v" j = j +1 Case "w" j = j +1 Case "x" j = j +1 Case "y" j = j +1 Case "z" j = j +1 Case "0" j = j +1 Case "1" j = j +1 Case "2" j = j +1 Case "3" j = j +1 Case "4" j = j +1 Case "5" j = j +1 Case "6" j = j +1 Case "7" j = j +1 Case "8" j = j +1 Case "9" j = j +1 End Select Next If j = 0 Then Return True End If Return False End Sub خوب حالا ما توی این متد تمامیه اعداد و حروف انگلیسی رو مینویسیم و مانند متدهای بالا عمل میکنیم ولی در پایان دستور if شرط میکنیم که اگه متغییر عددی j برابر با 0 بود داده برگشت داده true باشه چون اگه متن فارسی باشه متغییر ما نباید 1 باشه چون در کدهای بالا ما حروف و اعداد رو مشخص کردیم شما حتی میتونین حروف فارسی رو قرار بدین و کد button رو اینجوری مینویسیم Sub Button1_Click If checknumber(EditText1.Text) Then Msgbox("این متن عددی است","بیسیک 4 اندروید") Else If checkCharecter(EditText1.Text) Then Msgbox("این متن انگلیسی است","بیسیک 4 اندروید") Else If checkFarsiCharecter(EditText1.Text) Then Msgbox("این متن فارسی است","بیسیک 4 اندروید") Else Msgbox("این متن مختلط است","بیسیک 4 اندروید") End If End Sub راه های زیاد و آسون تری هم هست فقط برای مثال بود امیدوارم مفید باشه لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
mohammada 22 ارسال شده در 27 فروردین، ۱۳۹۴ اشتراک گذاری ارسال شده در 27 فروردین، ۱۳۹۴ سلام و خسته نباشید!! چجوری ممکنه فاصله بین کلمات رو تشخیص بدیم و مثلا جایگزین کنیم با کلمه دلخواه! ینی به این شکل مثلا تایپ میشه : سلام خوبی ! فاصله بین "سلام" و "خوبی" رو با کلمه فاصله پر بشه....یعنی مثلا خروجی بشه : سلام فاصله خوبی اسپیس رو تشخیص و با کلمه تایین شده پر کنه!!! به نوع و زبان تایپ هم وابسته نباشه! ممنون میشم راهنمایی کنید... لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
امیرنیوکی 147 ارسال شده در 27 فروردین، ۱۳۹۴ سازنده اشتراک گذاری ارسال شده در 27 فروردین، ۱۳۹۴ کافیه یه if بزاری بگی اگه کلمه = سلام بود به آخرش فاصله + خوبی اضافه کنه و به سلام بچسبونه لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
alireza-love 29 ارسال شده در 27 فروردین، ۱۳۹۴ اشتراک گذاری ارسال شده در 27 فروردین، ۱۳۹۴ سلام و خسته نباشید!!چجوری ممکنه فاصله بین کلمات رو تشخیص بدیم و مثلا جایگزین کنیم با کلمه دلخواه! ینی به این شکل مثلا تایپ میشه : سلام خوبی ! فاصله بین "سلام" و "خوبی" رو با کلمه فاصله پر بشه....یعنی مثلا خروجی بشه : سلام فاصله خوبی اسپیس رو تشخیص و با کلمه تایین شده پر کنه!!! به نوع و زبان تایپ هم وابسته نباشه! ممنون میشم راهنمایی کنید... Dim Changed As String Changed = EditText1.Text.Replace(" "," فاصله ") Msgbox(Changed,"") لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
امیرنیوکی 147 ارسال شده در 27 فروردین، ۱۳۹۴ سازنده اشتراک گذاری ارسال شده در 27 فروردین، ۱۳۹۴ من منظورتو بد فهمیدم شرمنده *r24* لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
mohammada 22 ارسال شده در 19 مهر، ۱۳۹۴ اشتراک گذاری ارسال شده در 19 مهر، ۱۳۹۴ سلام و خسته نباشید خدمت اساتید گل! دوستان چجوری امکانش هست حروف داخل ادیت تکست رو تشخیص و معادل سازی کنیم؟ مثلا کاربر داخل ادیت تکست بزنه "سلام" و ما نتیجه رو نشون بدیم "SALAM" ینی حروف به حروف تبدیل بشه مثلا حتی اگه کاربر زد "چ پ خ د" نتیجه نشون بده " ch p kh d" یا مثلا وارد کنن 1122 نتیجه بزنه ab??? خواهشا کمک کنید کارم خیلی گیر کرده...سریع لازم دارم! ممنون بابت همکاریتون!!! لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
مجید آرتا 5,874 ارسال شده در 19 مهر، ۱۳۹۴ اشتراک گذاری ارسال شده در 19 مهر، ۱۳۹۴ سلام دوستم چیزی رو که شما میگید به این راحتیا هم نیست که بنده توی 4 خط توضیح بهتون بگم.شما باید یک پردازش متن قوی بسازید. قدیما واسه چت روم های نیمباز میومدیم Auto Answer میساختیم ولی نه به صورتی که شما می گید.میومدیم کلمات رو به دو ستون تقسیم می کردیم.Target و Anwser Target : کلمه ای کاربر میگه. ---- > کاربر : سلام دوستان Answer : جوابی در برابر با کلمه کاربر. ------> ربات : علیک سلام. ولی اینکه بخواییم تک تک کاراکتر هارو بگیریم و معادلشو بنویسیم یکم کار داره و باید بشینید الگوریتمشو بنویسید.ولی خب اگه محدود به یکسری لغات هستید میتونید مثل یک دیکشنری عمل کنید و مقابل هر کلمه رو توی دیتابیس قرار بدید. موفق باشید. لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
mr_marashi 2 ارسال شده در 15 بهمن، ۱۳۹۵ اشتراک گذاری ارسال شده در 15 بهمن، ۱۳۹۵ سلام دوستان چطور میشه با کلیک بر روی edit text متن داخل آن توسط کرسر انتخاب بشه ؟ ممنون از راهنماییتون لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
پژمان نیکروان 6,055 ارسال شده در 15 بهمن، ۱۳۹۵ اشتراک گذاری ارسال شده در 15 بهمن، ۱۳۹۵ در ۱ ساعت قبل، mr_marashi گفته است : چطور میشه با کلیک بر روی edit text متن داخل آن توسط کرسر انتخاب بشه ؟ Sub edittext1_FocusChanged (HasFocus As Boolean) If HasFocus=True Then edittext1.SelectAll End Sub لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.