在Excel中查找和替换正则表达式的结果VB

在Excel中查找和替换正则表达式的结果VB

问题描述:

经过多次的挫折和阅读文档后,我似乎无法找到运行搜索正则表达式模式的方法,并替换电子表格中该模式的所有匹配项中的字符。在Excel中查找和替换正则表达式的结果VB

我有一个单元格此内容:

$test string[0] = "this is a test string."; $another test string[431] = "yet another test string"; 

这是我的正则表达式:

"\$(.*?)\[" 

输出:

test string, another test string 

我需要找到所有的比赛和更换连字符的空间以便输出为:

test-string, another-test-string 

关于如何做到这一点的任何想法?

在此先感谢!

+0

输出是:'测试字符串,另一个试验string',其余的被忽略?我几乎可以肯定,你必须分两步来做到这一点。 –

+0

基本上我只想做一个查找并替换我在正则表达式中搜索的东西。完整的输出是: '$ test-string [0] =“这是一个测试字符串。”; $ another-test-string [431] =“又一个测试字符串”;' –

我想你可以用积极的前瞻,即:

ResultString = Regex.Replace(SubjectString, "(?<=\$.*?) (?=.*?\[)", "-") 
+0

那个正则表达式不适合我...我错过了什么吗?下面是一个活生生的例子: 这是我在简单的复制粘贴的www.regex101.com编辑器中输入的文本:(?。?

+0

在你的例子中,字符串有两个不同的行。当我在我的位置上时,我会看看。 –

+0

对不起,慢慢习惯了这个非wysiwyg编辑器。谢谢你的帮助! :) –