PDA

View Full Version : فیلتر کردن بعضی از کلمات در تکس باکس



tehran2009
چهارشنبه 28 اسفند 1387, 09:29 صبح
آقا یه تکس باکس داریک که توش چندتا کلمه هستش مثلاً reza - ahmad -ali حالا می خوام یه دکمه ای هم باشه که وقتی روش کلیک کنم توی تکس باکس دوم نوشته ها رو بدون - {خط فاصله} بندازه . ( یعنی هر چی - (خط فاصله هست) در تکس دوم فیلتر بشن ) یه نگاهی به عکس ضمیمه بندازین.

دوستان ممنون میشم با پروژه های وی بی برام توضیح بدین

M_P_1374
چهارشنبه 28 اسفند 1387, 09:59 صبح
با rich text box میشه اینکارو انجام داد یعنی ابتدا حروف یا کلماتی که میخوای رو وارد کنی و بعد برای Replace در نظر بگیری ولی فکر نکنم با تکست باکس بشه

reza10203045
چهارشنبه 28 اسفند 1387, 10:15 صبح
خوب اینکه کاری نداره اول طول رشته را به دست میاری بعدی توی یک حلقه for یا while یک شرط میازی که اگه کاراکتر مورد نظر برابر - را به کاراکتر خالی تبدیل کنه . خودت سعی کن اگه به نتیجه نرسیدی بگو برات انجام بدم

tehran2009
چهارشنبه 28 اسفند 1387, 12:05 عصر
دوستان عزیز خیلی برام مهمه اگه ممکنه پروژه وی بی شو در اختیارم بزارین ممنون میشم .
حالا rich text box هم باشه ایرادی نیست . فقط اینکاری که می خوامو انجام بده

فاطمه وطن دوست
چهارشنبه 28 اسفند 1387, 14:35 عصر
Dim s$
s = InputBox("Enter Your Text", "EnteryData")

For k = 1 To Len(s)

If Mid$(s, k, 1) <> "-" Then Text1.Text = Text1.Text + Mid$(s, k, 1)

Next

FirstLine
چهارشنبه 28 اسفند 1387, 16:07 عصر
با سلام




Function MH_ReplaceStr_To_String ( Input_String : String ; StringForReplace : String ; String_Replace : String =' ' ; IsCaseSensitve : Boolean =False; bol_Trim_Compress:Boolean = True ) : String ;
Var
i_Increment, i_Loop, Len_String :Integer;
Begin
If bol_Trim_Compress Then Input_String := trim( Input_String) ;

if StringForReplace <> ' ' Then StringForReplace := LowerCase (trim( StringForReplace ) ) ;

if Length( StringForReplace ) >= Length( Input_String ) then Result := Input_String ;

i_Loop :=pos(LowerCase(StringForReplace) , LowerCase(String_Replace)) ;
if ( (Length( StringForReplace) < Length(String_Replace) ) AND ( i_Loop >0) ) then
begin

end else begin
Len_String := Length( Input_String );

For i_Loop:=0 to Len_String do
begin

i_Increment := Length( Input_String );
Input_String := AnsiReplaceStr ( LowerCase(Input_String) , StringForReplace ,String_Replace);

if i_Increment = Length(Input_String) then break ;

end;
end;

Result := Input_String ;

End;



txt_input.text:= MH_ReplaceStr_To_String ( txt_input.text , '-', ' ');

با تشکر

فاطمه وطن دوست
چهارشنبه 28 اسفند 1387, 16:21 عصر
این کدی که نوشتید زبانش پاسکال ؟

tehran2009
چهارشنبه 28 اسفند 1387, 20:06 عصر
اگه بخوام چندتا کلمه فیلتر کنم چی ؟؟

parselearn
پنج شنبه 29 اسفند 1387, 00:47 صبح
يك الگوريتم بد



Dim str(3) As String
Dim st As String

Dim s$

str(0) = "-"
str(1) = "/"
str(2) = "*"
str(3) = "+"

's = InputBox("Enter Your Text", "EnteryData")
s = Text2.Text
For k = 1 To Len(s)

For i = 0 To 3
If Mid$(s, k, 1) <> str(i) Then
d = 0
Else
d = 1
GoTo malas
End If
Next i

If d = 0 Then st = st + Mid$(s, k, 1)
malas: Next k

Text1.Text = st