VBA正则expression式来格式化一个string
我想删除所有的空格,括号(打开和closures),点和短划线,我尝试做一个正则expression式,但没有成功。 你可以帮我吗 ?
符合您要删除的RegEx是:
/[ \(\)\.-]/g
如果您想要匹配任何forms的空格而不是简单的空格,请使用\ d代替单个空格(方括号后的第一个字符)。
试试这个: regex: ([\s\(\{\[\)\}\]\.\-]+)
现场演示
我在php中使用:
$re = "/([\\s\\(\\{\\[\\)\\}\\]\\.\\-]+)/m"; $str = "park fdgh{dg df} df \n"; $subst = ""; $result = preg_replace($re, $subst, $str);
作为RegEx的替代scheme,请考虑:
Sub StringFixer() ary = Array("(", ")", " ", ".", "-") For Each r In Selection t = r.Text For Each a In ary t = Replace(t, a, "") Next a r.Value = t Next r End Sub