问题经常表达更换在Visual Studio2003年
-
22-07-2019 - |
题
我在这个过程中的转换一些乳胶文件重组了文本并具有一些麻烦一个定期表达的Visual Studio2003年。我想转换\我们会给{文}来*文*采用下列现代替:
\\emph\{([^\}]*)\}
*\0*
然而,使用这个对我\我们会给{文}转*\我们会给{文}*这不是我所期待的。当我用\1*代替*\0*我得到**为替换的结果。
什么我错过什么或什么我不了解有关分组的规则?
谢谢。
解决方案
我认为,在VS regex替换句法、\0是整个匹配的串,同时\1的内容是第一个拍摄的变量(\2在第二和以上)。因此:
\0
然而,使用这个对我 \我们会给{文}转*\我们会给{文}* 这是不是我所期待的。
因此确认、\0是整个matched string.
当我用\1*代替*\0*我得到**为替换的结果。
可能你是不匹配的什么都在捕捉类。
添加更详细的说明,法定的捕获类(称为一种标记表达 文档)使用牙套{},不圆括号()中的因为你是用在这里。可能这会的工作"发现"的表达:
\\emph\{{[^\}]*}\}
不隶属于 StackOverflow