我正在编写string.Format
类似的方法。为了做到这一点,我采用了Regex来确定命令和参数:例如Format(@"\m{0,1,2}", byteArr0, byteArr1, byteArr2)
解析格式器字符串的正则表达式
对于第一正则表达式,返回2组:
'\m'
'{0,1,2}'
另一个正则表达式需要的'{0,1,2}'
值,并具有3个匹配:
0
1
2
这些值是对应于所述byteArr
PARAMS索引。
这个命令结构很可能会增长,所以我真的想弄明白这一点,并学习到足以能够修改正则表达式以满足未来的需求。我认为一个正则表达式可以完成上述所有操作,但在那里是有两个单独的
正则表达式(es/ices ???)
表达式的值。
任何方式,以获得第一组'\m'
的正则表达式是:
"(\\)(\w{1,1})" // I want the '{0,1,2}' group also
为了得到整数匹配'{0,1,2}'
我尝试:
"(?<=\{)([^}]*)(?=\})"
我有实现难度:( 1)第一个表达式上的2个组和(2) 3个大括号内的整数与第二个表达式中的逗号分隔ñ。