求解vb.net2008关于文字类的一些问题
比如说,外部传入一个参数“函数名(参数1,参数2,1)”就把参数1传递出去
“函数名(参数1,参数2,2)”
就把参数2传递出去
如何办到?
注:这里指的都是文字 --------------------编程问答-------------------- 用正则表达式
--------------------编程问答--------------------
Dim input = “func(arg11,arg2,2)”
Dim regex = New Regex("[a-zA-Z0-9_]+\(([a-zA-Z0-9_]+),([a-zA-Z0-9_]+),(\d+)\)")
Dim match = regex.Match(input)
Dim index = CInt(match(3).Value)
Dim result = match(index)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(foo("函数名(参数1,参数2,1)"));
Console.WriteLine(foo("函数名(参数1,参数2,2)"));
}
static string foo(string input)
{
return Regex.Match(input, @"\w+?(\w+?,\w+?,(\w+))").Groups[1].Value;
}
}
}
1
2
Press any key to continue . . . --------------------编程问答--------------------
请问,regex是什么?我是VB.NET2008,也就是.NET3.5 --------------------编程问答-------------------- 函数中用if判断一下,第三个参数不就完事了 --------------------编程问答-------------------- 如果格式固定,直接分析字符串,转成对应的变量保存,调用即可,如果是想反射,搜索一下反射的基础知识。
补充:.NET技术 , VB.NET