ايران ويج

نسخه‌ی کامل: کد یافتن عدد در تکست باکس
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
دورد
دوستان بنده یه کد میخوام که دنبال یه عدد داخل متن تکست باکس بگرده و پیدا کنه و داخل یه تکس باکس دیگه نشون بده به یکی از روشهای زیر مخصوصا روش دوم

1 دنبال یه عدد مثلا ۴ رقمی بگرده و پیدا کنه نشان بده

2 دنبال عددی در رنج عداد خاص بگرده مثلا دنبال عدد بین رنج 500 تا  400000 بگرده و پیدا کنه و نشان بده

ممنون میشم فوری کمک کنید
در مورد دومی اینکار با عبارات با قاعده؛ در بیشتر زبان هابا یک خط قابل جست و جو هست!!
ولی چون ویژوآل بیسیک از این چیزا پشتبانی نمیکنه (منظورم ویژوآل بیسیک 6 هست) یکم سخت میشه:


کد php:
txt="ss 12 kkloi 5010 2003 asa 2320 "
txt txt "iio 400001 400000 as 1"

active=0
number
=""

for 1 to len(txt)
    If Mid(txti1) >= "0" And Mid(txti1) <= "9" Then
        number 
number Mid(txti1)
        active=1
    end 
if
    if active and Mid(txti+11) = " " then
        if number 
>= 500 and number <=400000 then
            wscript
.echo number
        end 
if
        number=""
        active=0
    end 
if
next 


اینو داخل vbs نوشتم؛ با vb همفرقی نداره؛ خروجیش اینه:

کد php:
5010
2003
2320
400000 

ولی همونطور که معلومه به شدت کند هست؛



خنده بلد − بهینه شده برای ورژن جدید خنده بلد − بهینه شده برای ورژن جدید  دستم درد نکنه؟ پنجاه درضد سود پروژه ات با هم شریکیم؛ خنده بلد − بهینه شده برای ورژن جدید خنده بلد − بهینه شده برای ورژن جدید خنده بلد − بهینه شده برای ورژن جدید
خدا یکی رو مرگ بده! خنده بلد − بهینه شده برای ورژن جدید خنده بلد − بهینه شده برای ورژن جدید مثل اینکه عبارات با قاعده داشت بنده خدا خنده بلد − بهینه شده برای ورژن جدید خنده بلد − بهینه شده برای ورژن جدید خنده بلد − بهینه شده برای ورژن جدید (توی ویندوز 7 تست کردم داره؛ هیچ کتابخونه ای هم یادم نمیاد این تو نصب کرده باشم)

این واسه vbs
کد php:
txt="ss 12 kkloi 5010 2003 asa 2320 "
txt txt "iio 400001 400000 as 1"

Set myRegExp = New RegExp
myRegExp
.IgnoreCase True
myRegExp
.Global = True
myRegExp
.Pattern " \d* "

Set myMatches myRegExp.Execute(txt)
For 
Each myMatch in myMatches
    number
=myMatch.Value
    wscript
.echo myMatch.Value
Next 


اینم واسه vb خودت تست کن خبرشو بده
http://www.regular-expressions.info/vb.html
ُسلام دوست عزیز
مشکلم با یه کد دیگ حل شد
بازم ممنونم که کمک کردید
راه حل رو هم رحمت بکشید بزاید
(۲۱-تير-۱۳۹۶, ۱۰:۱۹:۲۵)babyy نوشته است: [ -> ]راه حل رو هم رحمت بکشید بزاید

سلام ببخشید دیر شد
این یکی از کدها

کد:
Private Sub Command1_Click()
   Text2.Text = ExtractNumbers(Text1.Text)
End Sub

Private Function ExtractNumbers(nText As String, Optional nLowestValue As Long = 1000, Optional nHighestValue As Long = 2000) As String
   Dim iChr As String
   Dim c As Long
   Dim iNum As String
   Dim iVal As Long
   
   For c = 1 To Len(nText) + 1
       iChr = Mid(nText, c, 1)
       If IsNumeric(iChr) Then
           iNum = iNum & iChr
       ElseIf iNum <> "" Then
           iVal = Val(iNum)
           If (iVal >= nLowestValue) And (iVal <= nHighestValue) Then
               If ExtractNumbers <> "" Then ExtractNumbers = ExtractNumbers & " "
               ExtractNumbers = ExtractNumbers & iNum
           End If
           iNum = ""
       End If
   Next c
End Function