VB6和C在编程领域有哪些应用差异?
- 内容介绍
- 文章标签
- 相关推荐
本文共计387个文字,预计阅读时间需要2分钟。
我需要将VB6(我不熟悉)项目转换成C#。
我需要将VB6(我不熟悉)项目转换为C#4.0.该项目包含一些字符串验证的正则表达式.我需要知道两种情况下的正则表达式是否相同,所以如果我只是将正则表达式字符串从VB6项目复制到C#项目,它们的工作方式是否相同?
我对正则表达式有一个基本的了解,我可以简单地阅读一下它的作用,但对于味道等,这一点在我的脑海中有点过头了.
例如,这两行是等价的吗?
VB6:
isStringValid = (str Like "*[!0-9A-Z]*")
C#:
isStringValid = Regex.IsMatch(str, "*[!0-9A-Z]*");
谢谢!
在你的例子中:
Like "*[!0-9A-Z]*"
匹配以任何字符(零个或多个)开头和结尾的字符串,然后与中间某处的字母数字字符不匹配.这个的正则表达式是:
/.*[^0-9A-Z].*/
编辑回答你的问题:不,这两个不能互换使用.但是,将Like的操作数转换为正确的正则表达式相当容易:
Like RegEx ========== ========== ? . * .* # \d [abc0-9] [abc0-9] [!abc0-9] [^abc0-9]
对此有一些警告,但这应该让你开始并涵盖大多数情况.
本文共计387个文字,预计阅读时间需要2分钟。
我需要将VB6(我不熟悉)项目转换成C#。
我需要将VB6(我不熟悉)项目转换为C#4.0.该项目包含一些字符串验证的正则表达式.我需要知道两种情况下的正则表达式是否相同,所以如果我只是将正则表达式字符串从VB6项目复制到C#项目,它们的工作方式是否相同?
我对正则表达式有一个基本的了解,我可以简单地阅读一下它的作用,但对于味道等,这一点在我的脑海中有点过头了.
例如,这两行是等价的吗?
VB6:
isStringValid = (str Like "*[!0-9A-Z]*")
C#:
isStringValid = Regex.IsMatch(str, "*[!0-9A-Z]*");
谢谢!
在你的例子中:
Like "*[!0-9A-Z]*"
匹配以任何字符(零个或多个)开头和结尾的字符串,然后与中间某处的字母数字字符不匹配.这个的正则表达式是:
/.*[^0-9A-Z].*/
编辑回答你的问题:不,这两个不能互换使用.但是,将Like的操作数转换为正确的正则表达式相当容易:
Like RegEx ========== ========== ? . * .* # \d [abc0-9] [abc0-9] [!abc0-9] [^abc0-9]
对此有一些警告,但这应该让你开始并涵盖大多数情况.

