|
|
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
Как проверить строку на содержание цифр ? С уважением Александр. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2007, 17:30 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
Александр GAGADDDOCКак проверить строку на содержание цифр ? С уважением Александр. В смысле? Вроде есть функция IsNumeric в модуле Strings которая TRUE возвращает, если строка из цифр или FALSE ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2007, 18:43 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
Т.е. есть ли цифры в тексте? В условии запроса для поля: Like "*#*" или Like "*[0-9]*" В VB: If str Like ... Then ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2007, 19:09 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
можно делать и по-дикарски: if val(stroka) <> "" then msgbox("There is number in this string") End if ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2007, 19:34 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
@TM@ROZчегможно делать и по-дикарски: if val(stroka) <> "" then msgbox("There is number in this string") End if Ну точно атмарозчег! If Val(stroka)<>0 then MsgBox "There is no number char in this string",vbCritical+vbOkOnly,"Warning:Critinos" End If ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2007, 09:01 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
>Вроде есть функция IsNumeric в модуле Strings которая TRUE возвращает, если строка из цифр или FALSE. Эта функция выдает True , если строка содержит 121,12 т.е запятую или 121.12 если в системе устанвлена точка. А нужно, что бы проверяла на все цифры т.е. строка содержит только цифри. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2007, 09:56 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
дёня и та тоже можно (чёт я ступил) :-)) гы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2007, 11:51 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
Спасибо за ответы ! Вопрос снят. Сделали так. 'Провірка на кому If InStr(cboN.Text, ",") <> 0 Then MsgBox "(" & cboN.Text & ")", vbExclamation, "(" & cboN.Text & ")" & " Не вірний номер !!! " Exit Sub End If 'Провірка на крапку If InStr(cboN.Text, ". ") <> 0 Then MsgBox "(" & cboN.Text & ")", vbExclamation, "(" & cboN.Text & ")" & " Не вірний номер !!! " Exit Sub End If 'Провірка чи можна преобразувати в число If IsNumeric(cboN.Text) = False Then MsgBox "(" & cboN.Text & ")", vbExclamation, "(" & cboN.Text & ")" & " Не вірний номер !!! " Exit Sub End If Модератор: Я вас уже предупреждал на счет рекламы своего сайта. Это второе предупреждение. Третьим будет бан. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2007, 12:06 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
Что-то не понял, что сделали-то? Я подставил в ваш пример 1E10 и это прошло как число. Вы учли научную нотацию чисел? Вас она устраивает? И в любом случае, ваше решение не соответствует заявленной вами же проблеме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2007, 15:37 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
VladConnЧто-то не понял, что сделали-то? Я подставил в ваш пример 1E10 и это прошло как число. Вы учли научную нотацию чисел? Вас она устраивает? И в любом случае, ваше решение не соответствует заявленной вами же проблеме. Я жутко извиняюсь, но неужели так сложно создать свою простую функцию проверки строки на то, запись ли это числа, такая задача стоит в билетах экзамена по информатике обычной школы, ну, колледжа точно. Это не столь больша проблема Вот вам пусть и грубый пример: Public Function StringByNumericChar(ByVal S As String) As Boolean Dim i As Long Dim l As Long Dim c As Byte Let l=Len(S) 10: Let i=i + 1 Let c=Asc(Mid$(S,i,1)) If (c>47)And(c<58) Then If (i<l) Then GoTo 10 Else Goto 20 End If Else Exit Function End If 20: If (i=l) Then Let StringByNumericChar=True End Function ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2007, 18:18 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
Программист Дёня, К сожалению, ваша функция утверждает, что вот это: 1.0 - не число. А если говорить о стиле... Более запутанного кода на такой крошечной площади с бесчисленными GoTo (!!!) вперемешку с Exit Function я не видел ни-ког-да. У меня бы специально так не получилось. И главный вопрос: что у вас там делает Let ??? Какую важную функцию несет? Я прошу прощения, если вы посчитаете, что я как-то смеюсь, это не так. Исключительно - код как таковой, и только. Успехов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2007, 14:43 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2007, 14:59 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
klen_ К сожалению, ваш код не компилируется. Что такое dlina? Если этот параметр выводится из первого параметра, то зачем он тогда? Если убрать Option Explicit, то опять же, 1.0 у вас - не число. Почему a - Variant? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2007, 15:09 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
VladConn ... функция утверждает, что вот это: 1.0 - не число. ... Александр GAGADDDOC ... А нужно, что бы проверяла на все цифры т.е. строка содержит только цифри. насчет goto и т.д. согласен)) ну и мои пять копеек: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2007, 15:11 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
Nikz, Почему ваша функция Variant? Мое утверждение об 1.0 - верно, т.к. Программист Дёня пишет: "..но неужели так сложно создать свою простую функцию проверки строки на то, запись ли это числа..." ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2007, 15:21 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
Nikz, вы, кстати, параметр передаете ByRef. Почему? Вот пример без циклов, отсекающий все, кроме цифр: Option Explicit Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long Private Const GWL_STYLE = (-16) Private Const ES_NUMBER As Long = &H2000& Private Sub Form_Load() Dim style As Long Text1.Text = "" style = GetWindowLong(Text1.hwnd, GWL_STYLE) SetWindowLong Text1.hwnd, GWL_STYLE, style Or ES_NUMBER End Sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2007, 15:34 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2007, 15:36 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
VladConn... ах да, ключевое слово стиль... Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. VladConn Option Explicit Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long Private Const GWL_STYLE = (-16) Private Const ES_NUMBER As Long = &H2000& Private Sub Form_Load() Dim style As Long Text1.Text = "" style = GetWindowLong(Text1.hwnd, GWL_STYLE) SetWindowLong Text1.hwnd, GWL_STYLE, style Or ES_NUMBER End Sub спрашивается, а причем тут овиплокос? хотя штука интересная, возьму на заметку) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2007, 15:47 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
lena_####, да! Я тут пытаюсь сварганить похожее через Like. Но вот Pattern... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2007, 15:53 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
Nikz, Класс!!! :0) Что такое овиплокос? Никита, если вам интересно, в моем примере, если поменять константы, то можно похоже контролировать не только цифры, но, скажем, верхний или нижний регистр. Насчет стиля... не обижайтесь, ради Б-га. Замучился в свое время с чужим кодом. Когда пример маленький - ладно, а в миллионах строк слабый стиль становится почти непреодолимым препятствием и вылезает в немалую копеечку. Успехов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2007, 16:02 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2007, 16:06 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
VladConnПрограммист Дёня, К сожалению, ваша функция утверждает, что вот это: 1.0 - не число. А если говорить о стиле... Более запутанного кода на такой крошечной площади с бесчисленными GoTo (!!!) вперемешку с Exit Function я не видел ни-ког-да. У меня бы специально так не получилось. И главный вопрос: что у вас там делает Let ??? Какую важную функцию несет? Я прошу прощения, если вы посчитаете, что я как-то смеюсь, это не так. Исключительно - код как таковой, и только. Успехов. Я тожа жутко извиняюсь, но у вас соображалка вообще есть, вы в название функции вчиталися? Моя функция проверяет лишь то, что строка состоит только из цифр, а не проверяет, число там записано или *рень какая-та. И кто вам сказал, что 1.0 это запись числа, да у них там, где всё через пэ это десятичная дробь, но мы в Росии и Европе кстати тоже запишем это так 1,0 и естественно для этого нужна совсем другая функция, более расширенная, чем моя. Кстати, прежде чем риздеть, могли бы свою функшэн предложить, а то я смотрю судить каждый горазд, а вот как своё лучшее предложить, так ни одна мамна .... вобщем всем всё понятно Модератор: Если постить еще быстрее, вы может быть успеете оскорбить еще больше участников за один день. Еще раз убеждаюсь в правильности решения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2007, 11:50 |
|
||
|
Проверка строки на cодержание цифр.(Повторно)
|
|||
|---|---|---|---|
|
#18+
Спасибо !!! Вопрос снят ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2007, 12:28 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=34529480&tid=2164011]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
119ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 402ms |

| 0 / 0 |
