端口代码到vb.net

本文关键字:vb net 代码 | 更新日期: 2023-09-27 18:16:16

我在网上找到了一些代码。它是在c#,我正试图将其移植到vb.net。我需要一些帮助,从日志子程序内调用评估器函数。在c#中,当在Log中调用求值器时,它似乎不需要任何参数。然而,VB一直要求Match参数。什么是神奇的,我应该如何让它在VB.NET工作?谢谢。

private string evaluator(Match match)
{
    Pri pri = new Pri(match.Groups[1].Value);
    return pri.ToString()+" ";
}
private void Log(EndPoint endPoint, string strReceived)
{
...
string strMessage = string.Format("{0} : {1}", 
    endPoint, m_regex.Replace(strReceived, evaluator));
...
}

端口代码到vb.net

c#版本使用Regex.Replace()(string, MatchEvaluator)重载,并使用方法名称到MatchEvaluator委托类型的隐式转换。请参阅MSDN文档中有关重载的信息。

在MSDN页面上,他们是这样称呼它的:

Dim result As String = rx.Replace(text, AddressOf RegExSample.CapText)

所以一定要使用AddressOf关键字