• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
向往
博客园    首页    新随笔    联系   管理    订阅  订阅
js c# 使用正则替换字符串

在工作中遇到的问题 

来和大家分享一下  js 、c# 利用正则替换每一项
题:把字符串中的 以 ‘@’符号开头 空格或空白字符结束的项 加上A标签
如: str="你好 @网络 @虫" 结果应该是 str="你好 <a>@网络</a> <a>@虫</a>"

js:
 var str = "ab@c12 dkfk@jab c345";
        var regx = /@\w*\s*?/g;
        var rs = str.match(regx);
        for (var i = 0; i < rs.length; i++) {
            alert(rs[i]);
            str = str.replace(rs[i],"<a>"+rs[i]+"</a>");
        }
        alert(str);

c#:
 /// <summary>
        /// 将@开头或者以空格结束的字符串 加上链接
        /// </summary>
        /// <param name="content"></param>
        /// <returns></returns>
        public string replcehref(string content)
        {
            string pattern = @"@\w*\s*?";
            Regex reg = new Regex(pattern, RegexOptions.Singleline);
            MatchCollection mc = reg.Matches(content);
            string nickname = string.Empty;
            foreach (Match m in mc)
            {
                try
                {
                    nickname = m.Groups[0].Value.Substring(1);
                    content = content.Replace(m.Groups[0].Value, "<a>" + m.Groups[0].Value+"</a>");

                }
                catch (Exception e)
                {
                }
            }
            return content;

        }
posted on 2011-10-21 23:02  向往  阅读(916)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3