IsNumeric问题 [英] IsNumeric question
问题描述
我正在尝试检查一个字符串,看看它的前3个字符是否为数字
如果是,则替换这3个字符用其他东西。
我试过这个但没有任何反应......
newname = Replace(newname,VB.Left( newname,3)=" 101-"," 101。")
到目前为止,我一直在使用的方法很长,而且时间太长了我需要一个更有效的方式来做这件事。
这就是我用过的......
如果VB.Left(newname,3)=" 01-"或者VB.Left(newname,3)=" 02-" _
或VB.Left(newname,3)=" 03-"或VB.Left(newname,3)=" 04-" _
或VB.Left(newname,3)=" 05-"或VB.Left(newname,3)=" 06-" _
或VB.Left(newname,3)=" 07-"或者VB.Left(newname,3)=" 08-" _
或VB.Left(newname,3)=" 09-"或VB.Left(newname,3)=" 10-"然后
newname =替换(newname," 01-"," 01。")
newname =替换(newname," 02-", " 02。")
newname =替换(newname," 03-"," 03。")
newname =替换(newname," ; 04-"," 04。")
newname =替换(newname," 05-"," 05。")
newname =替换(新名称,06-,06。)
newname =替换(新名称,07-,07。)
newname =替换(newname," 08-"," 08。")
newname =替换(newname," 09-"," 09。 ")
newname =替换(newname," 10-"," 10。")
结束如果
任何想法?
干杯,
Paul
Hi,
I am trying to check a string to see if it''s first 3 characters are numeric
and if they are, to replace those 3 characters with something else.
I''ve tried this but nothing happens...
newname = Replace(newname, VB.Left(newname, 3) = "101-", "101. ")
The method I''ve been using up to now is very drawn out and too long and I
need a more efficient way of doing it.
This is what I''ve beeni using...
If VB.Left(newname, 3) = "01-" Or VB.Left(newname, 3) = "02-" _
Or VB.Left(newname, 3) = "03-" Or VB.Left(newname, 3) = "04-" _
Or VB.Left(newname, 3) = "05-" Or VB.Left(newname, 3) = "06-" _
Or VB.Left(newname, 3) = "07-" Or VB.Left(newname, 3) = "08-" _
Or VB.Left(newname, 3) = "09-" Or VB.Left(newname, 3) = "10-" Then
newname = Replace(newname, "01-", "01. ")
newname = Replace(newname, "02-", "02. ")
newname = Replace(newname, "03-", "03. ")
newname = Replace(newname, "04-", "04. ")
newname = Replace(newname, "05-", "05. ")
newname = Replace(newname, "06-", "06. ")
newname = Replace(newname, "07-", "07. ")
newname = Replace(newname, "08-", "08. ")
newname = Replace(newname, "09-", "09. ")
newname = Replace(newname, "10-", "10. ")
End If
Any ideas?
Cheers,
Paul
推荐答案
不能你只需检查字符 - 并用。替换它。 ?
" Paul" < ia*@home.co.ukschreef在bericht
新闻:oL ******************** @ pipex.net ...
can''t you just check for the character "-" and replace it with a "." ?
"Paul" <ia*@home.co.ukschreef in bericht
news:oL********************@pipex.net...
我正在尝试检查一个字符串,看看它的前三个字符是否是
数字,如果它们是,用这些东西替换这3个字符
else。
我试过这个但没有任何反应...
newname =替换(newname,VB.Left(newname,3)=" 101-"," 101。")
我到目前为止使用的方法非常耗费而且时间太长而且我需要一种更有效的方法来实现它。
这就是我一直在使用...
如果VB.Left(newname,3)=" 01-"或者VB.Left(newname,3)=" 02-" _
或VB.Left(newname,3)=" 03-"或VB.Left(newname,3)=" 04-" _
或VB.Left(newname,3)=" 05-"或VB.Left(newname,3)=" 06-" _
或VB.Left(newname,3)=" 07-"或者VB.Left(newname,3)=" 08-" _
或VB.Left(newname,3)=" 09-"或VB.Left(newname,3)=" 10-"然后
newname =替换(newname," 01-"," 01。")
newname =替换(newname," 02-", " 02。")
newname =替换(newname," 03-"," 03。")
newname =替换(newname," ; 04-"," 04。")
newname =替换(newname," 05-"," 05。")
newname =替换(新名称,06-,06。)
newname =替换(新名称,07-,07。)
newname =替换(newname," 08-"," 08。")
newname =替换(newname," 09-"," 09。 ")
newname =替换(newname," 10-"," 10。")
结束如果
任何想法?
干杯,
Paul
Hi,
I am trying to check a string to see if it''s first 3 characters are
numeric and if they are, to replace those 3 characters with something
else.
I''ve tried this but nothing happens...
newname = Replace(newname, VB.Left(newname, 3) = "101-", "101. ")
The method I''ve been using up to now is very drawn out and too long and I
need a more efficient way of doing it.
This is what I''ve beeni using...
If VB.Left(newname, 3) = "01-" Or VB.Left(newname, 3) = "02-" _
Or VB.Left(newname, 3) = "03-" Or VB.Left(newname, 3) = "04-" _
Or VB.Left(newname, 3) = "05-" Or VB.Left(newname, 3) = "06-" _
Or VB.Left(newname, 3) = "07-" Or VB.Left(newname, 3) = "08-" _
Or VB.Left(newname, 3) = "09-" Or VB.Left(newname, 3) = "10-" Then
newname = Replace(newname, "01-", "01. ")
newname = Replace(newname, "02-", "02. ")
newname = Replace(newname, "03-", "03. ")
newname = Replace(newname, "04-", "04. ")
newname = Replace(newname, "05-", "05. ")
newname = Replace(newname, "06-", "06. ")
newname = Replace(newname, "07-", "07. ")
newname = Replace(newname, "08-", "08. ")
newname = Replace(newname, "09-", "09. ")
newname = Replace(newname, "10-", "10. ")
End If
Any ideas?
Cheers,
Paul
我有不知道你想说什么,但我仍然会尝试回答
你。
您是否只想用一段时间替换第一个连字符?如果是这样
就这样做:
newname = newname.Substring(0,3)&替换(newname.Substring(3,1),
" - ","。")& newname.Substring(4,newname.Length - 4)
如果您需要前3个字符为数字,请将上面的内容包装在
an if中。 ..然后测试
ie
如果是IsNumeric(newname.Substring(1,3))那么
newname = newname.Substring(0,3)&替换(newname.Substring(3,
1)," - ","。")& newname.Substring(4,newname.Length - 4)
MsgBox(newname)
结束如果
谢谢,
Seth Rowe
Paul写道:
I have no idea what you are trying to say, but I''ll still try to answer
you.
Are you just trying to replace the first hyphen with a period? If so
just do this:
newname = newname.Substring(0, 3) & Replace(newname.Substring(3, 1),
"-", ".") & newname.Substring(4, newname.Length - 4)
If you need the first 3 characters to be numeric then wrap the above in
an if...then test
i.e.
If IsNumeric(newname.Substring(1, 3)) Then
newname = newname.Substring(0, 3) & Replace(newname.Substring(3,
1), "-", ".") & newname.Substring(4, newname.Length - 4)
MsgBox(newname)
End If
Thanks,
Seth Rowe
Paul wrote:
我我试图查看一个字符串,看看它的前3个字符是否为数字
,如果是,则用其他东西替换这3个字符。
我试过这个但没有任何反应......
newname = Replace(newname,VB.Left(newname,3)=" 101-"," 101.)
到目前为止我一直在使用的方法非常抽出而且时间太长而且我需要更高效的方式来支付
这是我用过的......
如果VB.Left(newname,3)=" 01- "或者VB.Left(newname,3)=" 02-" _
或VB.Left(newname,3)=" 03-"或VB.Left(newname,3)=" 04-" _
或VB.Left(newname,3)=" 05-"或VB.Left(newname,3)=" 06-" _
或VB.Left(newname,3)=" 07-"或者VB.Left(newname,3)=" 08-" _
或VB.Left(newname,3)=" 09-"或VB.Left(newname,3)=" 10-"然后
newname =替换(newname," 01-"," 01。")
newname =替换(newname," 02-", " 02。")
newname =替换(newname," 03-"," 03。")
newname =替换(newname," ; 04-"," 04。")
newname =替换(newname," 05-"," 05。")
newname =替换(新名称,06-,06。)
newname =替换(新名称,07-,07。)
newname =替换(newname," 08-"," 08。")
newname =替换(newname," 09-"," 09。 ")
newname =替换(newname," 10-"," 10。")
结束如果
有什么想法吗?
干杯,
保罗
Hi,
I am trying to check a string to see if it''s first 3 characters are numeric
and if they are, to replace those 3 characters with something else.
I''ve tried this but nothing happens...
newname = Replace(newname, VB.Left(newname, 3) = "101-", "101. ")
The method I''ve been using up to now is very drawn out and too long and I
need a more efficient way of doing it.
This is what I''ve beeni using...
If VB.Left(newname, 3) = "01-" Or VB.Left(newname, 3) = "02-" _
Or VB.Left(newname, 3) = "03-" Or VB.Left(newname, 3) = "04-" _
Or VB.Left(newname, 3) = "05-" Or VB.Left(newname, 3) = "06-" _
Or VB.Left(newname, 3) = "07-" Or VB.Left(newname, 3) = "08-" _
Or VB.Left(newname, 3) = "09-" Or VB.Left(newname, 3) = "10-" Then
newname = Replace(newname, "01-", "01. ")
newname = Replace(newname, "02-", "02. ")
newname = Replace(newname, "03-", "03. ")
newname = Replace(newname, "04-", "04. ")
newname = Replace(newname, "05-", "05. ")
newname = Replace(newname, "06-", "06. ")
newname = Replace(newname, "07-", "07. ")
newname = Replace(newname, "08-", "08. ")
newname = Replace(newname, "09-", "09. ")
newname = Replace(newname, "10-", "10. ")
End If
Any ideas?
Cheers,
Paul
您也可以尝试使用正则表达式(正则表达式)功能,因为它们
会让你使用类似通配符的模式检查源字符串。
-----
Tim Patrick >
从头到尾Visual Basic 2005
You could also try using the Regular Expression (Regex) features, as they
would let you examine the source string using wildcard-like patterns.
-----
Tim Patrick
Start-to-Finish Visual Basic 2005
我正在尝试检查一个字符串,看看是否有'前3个字符是
数字
如果是,用其他东西替换这3个字符。
我已经试过这个但没有任何反应...
newname = Replace(newname,VB.Left(newname,3)=" 101-"," 101。 ")
我到目前为止使用的方法非常抽出而且太长
和我
需要一种更有效的方法。
这就是我用过的......
如果VB.Left(newname,3)=" 01-"或者VB.Left(newname,3)=" 02-" _
或VB.Left(newname,3)=" 03-"或VB.Left(newname,3)=" 04-" _
或VB.Left(newname,3)=" 05-"或VB.Left(newname,3)=" 06-" _
或VB.Left(newname,3)=" 07-"或者VB.Left(newname,3)=" 08-" _
或VB.Left(newname,3)=" 09-"或VB.Left(newname,3)=" 10-"然后
newname =替换(newname," 01-"," 01。")
newname =替换(newname," 02-", " 02。")
newname =替换(newname," 03-"," 03。")
newname =替换(newname," ; 04-"," 04。")
newname =替换(newname," 05-"," 05。")
newname =替换(新名称,06-,06。)
newname =替换(新名称,07-,07。)
newname = Replace(newname," 08-"," 08。")
newname = Replace(newname," 09-"," 09。 ")
newname =替换(newname," 10-"," 10。")
结束如果
任何想法?
干杯,
Paul
Hi,
I am trying to check a string to see if it''s first 3 characters are
numeric
and if they are, to replace those 3 characters with something else.
I''ve tried this but nothing happens...
newname = Replace(newname, VB.Left(newname, 3) = "101-", "101. ")
The method I''ve been using up to now is very drawn out and too long
and I
need a more efficient way of doing it.
This is what I''ve beeni using...
If VB.Left(newname, 3) = "01-" Or VB.Left(newname, 3) = "02-" _
Or VB.Left(newname, 3) = "03-" Or VB.Left(newname, 3) = "04-" _
Or VB.Left(newname, 3) = "05-" Or VB.Left(newname, 3) = "06-" _
Or VB.Left(newname, 3) = "07-" Or VB.Left(newname, 3) = "08-" _
Or VB.Left(newname, 3) = "09-" Or VB.Left(newname, 3) = "10-" Then
newname = Replace(newname, "01-", "01. ")
newname = Replace(newname, "02-", "02. ")
newname = Replace(newname, "03-", "03. ")
newname = Replace(newname, "04-", "04. ")
newname = Replace(newname, "05-", "05. ")
newname = Replace(newname, "06-", "06. ")
newname = Replace(newname, "07-", "07. ")
newname = Replace(newname, "08-", "08. ")
newname = Replace(newname, "09-", "09. ")
newname = Replace(newname, "10-", "10. ")
End If
Any ideas?
Cheers,
Paul
这篇关于IsNumeric问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!