JBTALKS.CC

标题: visual basic 2008 programming~ [打印本页]

作者: bboycs    时间: 2009-8-24 08:37 PM
标题: visual basic 2008 programming~
请问哦~

如果我有三个textbox~
textbox1
textbox2
textbox3

而限定textbox2和textbox3必须是数字~不然就有messegebox~

if isnumeric(textbox2.text) and isnumeric(textbox3.text) then

else
messagebox,show(........省略)

end if



问题来了~/
我想加多一个把textbox1不能为空格的code~
然后是想多一个messagebox~
请问必须怎样做啊?
请指教~
谢谢
作者: 宅男-兜着走    时间: 2009-8-24 10:37 PM
标题: 回复 #1 bboycs 的帖子
if isnumeric(textbox2.text) and isnumeric(textbox3.text) and textbox2.text  !=  ""  then

else
messagebox,show(........省略)

end if

不懂visual 的是放 is 还是 !=   你去试试看, 只要抓到是 ""  就等于无东西就对了。

[ 本帖最后由 宅男-兜着走 于 2009-8-24 10:39 PM 编辑 ]
作者: goodhermit95    时间: 2009-8-25 09:00 PM
标题: 回复 #1 bboycs 的帖子
if isnumeric(textbox2.text) and isnumeric(textbox3.text) then

elseif textbox1.text = "" then
messagebox.show(........省略)
else
messagebox,show(........省略)

end if
作者: goodday    时间: 2009-8-25 09:40 PM
考你们
我要 A到Z 1-0 而已

a-z A-Z 1-0

其他的符号不要


答中 我加分
越短我就越高
作者: Super-Tomato    时间: 2009-8-25 09:51 PM
原帖由 goodday 于 2009-8-25 09:40 PM 发表
考你们
我要 A到Z 1-0 而已

a-z A-Z 1-0

其他的符号不要


答中 我加分
越短我就越高


不清楚 .NET 的 input mask 是否有特別的功能, 一般可以用 regular expression 來判斷是否 match, 不然就只好用 for 來判斷每個字是否在指定的 ASCII 值內
作者: goodhermit95    时间: 2009-8-25 10:02 PM
1 - 10吧
这个不简单


  1. dim strtext as string = textbox1.text
  2. for i as integer = 48 to 90
  3. strtext = strtext.replace(chr(i),"")
  4. next
  5. if strtext.length = 0 then
  6. msgbox("wheeee",information)
  7. else
  8. msgbox("awwww",critical)
  9. end if
复制代码

nah C#更短
我short 够力够力

  1. string text = textbox1.text;
  2. for(int i = 0,48 > i > 90,i++){text.replace(chr(i),"");}
  3. if(text.length =0){
  4. messagebox.show("wheee");}else{
  5. messagebox.show("awww");}
复制代码

不要拿你的code比
给多少
我这里没有vs
测试
作者: goodhermit95    时间: 2009-8-25 10:08 PM
标题: 回复 #5 Super-Tomato 的帖子
regular expression比较快
可是我不会
但是这类型的regular expression 的 format 最容易了
用regular expression的话……

  1. 1->设regular expression format 1-10 a-z A-Z
  2. 2->If Then Else探测是否符合
  3. 3->输出
复制代码

三行搞定
2的部分可以用一行搞定
if ismatch(string,format) then ->todo
作者: Super-Tomato    时间: 2009-8-25 10:10 PM
原帖由 goodhermit95 于 2009-8-25 10:02 PM 发表
1 - 10吧
这个不简单


dim strtext as string = textbox1.text
for i as integer = 48 to 90
strtext = strtext.replace(chr(i),"")
next
if strtext.length = 0 then
msgbox("wheeee",information)
...


這樣比對速度上慢了而且字數有限, 應該是循環文字長度判斷才對
作者: Super-Tomato    时间: 2009-8-25 10:42 PM
原帖由 goodhermit95 于 2009-8-25 10:08 PM 发表
regular expression比较快
可是我不会
但是这类型的regular expression 的 format 最容易了
用regular expression的话……

1->设regular expression format 1-10 a-z A-Z
2->If Then Else探测是否符合
...



哦.... regular expression 的重點只是在 pattern, 只要記得有哪些其他都可以自己變化, 懶惰打開編譯器, 直接用 javascript 寫個例子給你看好了

alert(/^[a-zA-Z0-9]+$/.test("SuperTomato")?"Valid":"Invalid");

作者: goodhermit95    时间: 2009-8-25 10:44 PM
标题: 回复 #8 Super-Tomato 的帖子
那么code好像就比较长
goodday要短短的 em0023
还要多一个 for int j 然后indexof(j)
效能不重要,短就好 em0036
远短越多分em0036

哈哈
不好笑 em0041
作者: goodhermit95    时间: 2009-8-25 10:53 PM
标题: 回复 #9 Super-Tomato 的帖子
我记得……好像是这样……
好像可以一行
之前要import system.text.regularexpression


  1. dim re as new regexp
  2. if re.ismatch(textbox1.text,"A-Za-z0.9") then
  3. end if
复制代码


em0023
作者: 毛毛小子    时间: 2009-8-26 12:15 AM
不知道我的algorithm对不对
String answer;
while(answer.equalsIgnoreCase("[a-zA-z]||[0-9]")){ }


还是这样?
var myRegExp = /[A-Z][0-9]/;

作者: Super-Tomato    时间: 2009-8-26 08:12 AM
原帖由 goodhermit95 于 2009-8-25 10:53 PM 发表
我记得……好像是这样……
好像可以一行
之前要import system.text.regularexpression


dim re as new regexp
if re.ismatch(textbox1.text,"A-Za-z0.9") then
end if


em0023



.NET 我不清楚, 我想大致是這樣, 而 Goodday 要求的是不要其他符號, 那麼只要用 re.replace 配合 pattern 就可以達成了, 如

MessageBox.Show(re.Replace(string, pattern, ''))





原帖由 毛毛小子 于 2009-8-26 12:15 AM 发表
不知道我的algorithm对不对


还是这样?


Javascript 來說你那樣只是算定義了 pattern, 而實際的運用必須配合其他函數, 如
alert("Super-Tomato _!@#$%^&*()-=+".replace(/[^a-zA-Z 0-9]+/g, ""));


也就是

var str = "Super-Tomato _!@#$%^&*()-=+";
var exp = /[^a-zA-Z 0-9]+/g;
str = str.replace(exp, ""); //把符合的 pattern 替換為無任何文字
alert(str);

[ 本帖最后由 Super-Tomato 于 2009-8-26 08:16 AM 编辑 ]
作者: goodday    时间: 2009-8-26 11:43 AM
今天给你分超多

:)


  1.     Public Function OnlyazAZ09(ByVal text As String) As Boolean
  2.         Dim Rtn As Boolean = False
  3.         'add at 2003-05-20
  4.         'Dim AllowCase As String() = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z" _
  5.         '                           , "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z" _
  6.         '                           , "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"}
  7.         'For i As Integer = 0 To text.Count - 1
  8.         '    For j As Integer = 0 To AllowCase.Count - 1
  9.         '        If text.ToString.Substring(i, 1) = AllowCase(j) Then
  10.         '            Rtn = True
  11.         '            Exit For
  12.         '        End If
  13.         '    Next
  14.         'Next
  15.         'modify at 2005-02-17
  16.         Dim RegexObj As New Regex("[A-Za-z0-9_]")
  17.         Rtn = RegexObj.IsMatch(text)

  18.         Return Rtn
  19.       
  20.     End Function
复制代码


我的 libarary 的string class
以前的是 笨点 会了 regular expression 就懒很多

这几天我发现我的lib 很垃圾
要处理一下咯

[ 本帖最后由 goodday 于 2009-8-26 01:34 PM 编辑 ]
作者: Super-Tomato    时间: 2009-8-26 03:05 PM
原帖由 goodday 于 2009-8-26 11:43 AM 发表
今天给你分超多

:)


    Public Function OnlyazAZ09(ByVal text As String) As Boolean
        Dim Rtn As Boolean = False
        'add at 2003-05-20
        'Dim AllowCase As String() =  ...


呵.... 這是必經之路
作者: goodhermit95    时间: 2009-8-26 06:20 PM
标题: 回复 #14 goodday 的帖子
经验多了就要加强旧library的效率
以前刚刚开始学的时候 超好笑
我的code
  1. 'NOOB Virus??
  2. system.diagnostics.process.start("adult webpage")
  3. system.diagnostics.process.start("adult webpage")
  4. system.diagnostics.process.start("adult webpage")
  5. system.diagnostics.process.start("adult webpage")
  6. system.diagnostics.process.start("adult webpage")
  7. system.diagnostics.process.start("adult webpage")
  8. system.diagnostics.process.start("adult webpage")
  9. system.diagnostics.process.start("adult webpage")
  10. system.diagnostics.process.start("adult webpage")
  11. system.diagnostics.process.start("adult webpage")
  12. system.diagnostics.process.start("adult webpage")
  13. system.diagnostics.process.start("adult webpage")
  14. system.diagnostics.process.start("adult webpage")
  15. system.diagnostics.process.start("adult webpage")
  16. system.diagnostics.process.start("adult webpage")
  17. system.diagnostics.process.start("adult webpage")
  18. system.diagnostics.process.start("adult webpage")
  19. system.diagnostics.process.start("adult webpage")
  20. system.diagnostics.process.start("adult webpage")
  21. system.diagnostics.process.start("adult webpage")
  22. system.diagnostics.process.start("adult webpage")
  23. system.diagnostics.process.start("adult webpage")
  24. system.diagnostics.process.start("adult webpage")
  25. system.diagnostics.process.start("adult webpage")
  26. system.diagnostics.process.start("adult webpage")
  27. .............................................
复制代码

有了经验,厉害啦

  1. while enabled = true
  2. system.diagnostics.process.start("adult webpage")
  3. end while
复制代码


我的hacker studio也是这样,刚开始写够lag,上个放假改进后,一点也不lag
哈哈
作者: 毛毛小子    时间: 2009-8-27 11:47 AM
标题: 回复 #13 Super-Tomato 的帖子
多谢指点..
我会改进..
作者: 我是大猪头    时间: 2009-8-28 12:59 AM
有谁愿意分享library来造福人群
作者: goodhermit95    时间: 2009-8-28 06:55 PM
标题: 回复 #18 我是大猪头 的帖子
什么的library
GZip的?
.net 的我有
超好用
作者: goodday    时间: 2009-8-28 11:18 PM
原帖由 我是大猪头 于 2009-8-28 12:59 AM 发表
有谁愿意分享library来造福人群


library 自己的比较好啦 
给了你 你不是跟我的 你也不会用

作者: 摸马路    时间: 2009-8-29 12:16 AM
标题: 那里有的买...
请问各位,哪里能买到正版又便宜的软件编程??请知道的pm我,谢谢。。。




欢迎光临 JBTALKS.CC (https://jbtalks.my/) Powered by Discuz! X2.5