首页 新闻 搜索 专区 学院

求一个VS查找替换的正则表达式

0
悬赏园豆:20 [已解决问题] 解决于 2015-08-14 14:07

内容特点:

#=xxxx==

#=xxxx=

其中#=为固定开头,==或=为固定结尾

xxxx为任意的数字、字母、下划线、$符号

要求替换后的结果是:

xxxx的不含$符号的内容,同时 把 $ 使用下划线替代

比如:#=q4_2$mj41Q$lP1JteYkd7oATy$jtaLM9$PfPO3O8Z5HY= 希望得到 q4_2_mj41Q_lP1JteYkd7oATy_jtaLM9_PfPO3O8Z5HY

 

同时,如果 xxxx 是以数字开头,则自动添加下划线(当然,直接强制添加下划线也可以)

519740105的主页 519740105 | 大侠五级 | 园豆:5810
提问于:2015-08-12 18:52
< >
分享
最佳答案
0

问题解决了。

1、VS 2008的查找替换正则表达式是自己的一套

2、通过参考VS 2008的正则表达式编写文档,完成了查询

3、不能替换。始终 \1 是空的,不知道是否我写的VS 2008的查找正则表达式有问题。

4、2013上的正则表达式是大众版本的。

 

谢谢各位。

519740105 | 大侠五级 |园豆:5810 | 2015-08-14 14:04
其他回答(4)
0
(?<=\=)(.*?)(?=\=)
收获园豆:5
麦兜很乖 | 园豆:214 (菜鸟二级) | 2015-08-13 09:19
0

/^#=([A-Za-z0-9_$]+)(=|==)$/

js:

收获园豆:5
顺风车 | 园豆:207 (菜鸟二级) | 2015-08-13 09:29
0

参考我的博客中的一篇正则30分钟精通教程:

http://www.cnblogs.com/hanxianlong/archive/2009/11/24/1609834.html

收获园豆:5
是谁啊? | 园豆:339 (菜鸟二级) | 2015-08-13 09:42
0

你测试下

Regex x = new Regex("(#=)(.*)(={1,2})");
            string str = "dsfgsdagasgs#=q4_2$mj41Q$lP1JteYkd7oATy$jtaLM9$PfPO3O8Z5HY=dafafdafaf";
            var newStr = x.Matches(str);
            if (newStr.Count > 0)
                foreach (var s0 in newStr)
                {
                    string s1 = Regex.Replace(s0.ToString(), "\\$", "");
                    string s2 = Regex.Replace(s1.ToString(), "(#=)", "");
                    string s3=s2.Remove(s2.Length-1,1);
                    Console.WriteLine(s3);
                }
            Console.ReadKey();
收获园豆:5
稳稳的河 | 园豆:4216 (老鸟四级) | 2015-08-13 09:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册