|
上平台中的代码: '第一个参数是dll文件名,第二个参数是正则表达式的类名,第三个就是争着表达式的规则
dim regex= LoadAssembly("System.dll","System.Text.RegularExpressions.Regex","^[0-9]*$")
'参数是需要验证的字符串,返回结果为该字符串是否符合规则
dim temp=regex.IsMatch("123"))
看到这个代码的时候大家可能已经明白了,其实是加载了System.dll的外部文件,这样有一个小问题就是,这个文件必须拷贝到客户端目录下,那么在平台中如果要使所有客户端都能使用,那就把System.dll文件放到客户端的自动更新目录下。
在说说System.dll文件哪里来的,这个就是.NET本来就有的,随便找台咱装了.NET的电脑拷贝出来就行了,一般实在:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.dll
在说说,为什么要这么麻烦,而不是直接就能使用正则表达式呢,下面就说说在平台中理论上是怎么操作的:
理论上在平台中只需要下面一句代码:
'第一个参数是验证字符串,第二个参数验证规则,直接返回验证结果
dim temp=System.Text.RegularExpressions.Regex.IsMatch("123", "^[0-9]*$")
但是这个目前还不能使用,等待平台后期版本也许会对这个处理,那么就可以直接使用System里面的这些函数,包括这个正则表达式。目前不能使用那就只有自己加载这个dll文件了。
管理员说明:
平台中是引用了System.Dll的。需要下面这种方法调用,就不需要把system.dll拷贝到客户端下。
dim regex=createObject("System.Text.RegularExpressions.Regex","^[0-9]*$")
dim temp=regex.IsMatch("123")
msgbox(temp)
已经更正。
|
|