有一段字符串(HTML代码)
UserName: <input id="tbUserName" type="text" />
Password: <input id="tbPassword" type="password" />现在想通过正则替换上面字符串的某个单词,如把 “Password” 换成 “登录密码”,
我现在用的正则是:
inputHTML = Regex.Replace(inputHTML, "\\bPassword\\b", "登录密码", RegexOptions.IgnoreCase);但执行完后,把 type="password" 换成了 type="登录密码",不符合要求。
各位,正则如何替换完整单词和不包含="开始的字符 ? 就是要求 ="Password 不能被替换。

解决方案 »

  1.   

    以你上面例子,可以该成
    inputHTML = Regex.Replace(inputHTML, "\\bPassword\\b", "登录密码");
      

  2.   

    刚才没看函数原形,因该是这样
    inputHTML = Regex.Replace(inputHTML, "\\bPassword\\b", "登录密码", RegexOptions.None);就是要进行大小写匹配.
      

  3.   

    上面的Password只是一个例子数据, yuanarea(Sail before) ,按你的说法: 如果原字符是这样
    submit text : <input type="text" id="tbText" />
    <input type="submit" value="OK" />如果是把 “submit”换成“提交”、 “text”换成“文本”,代码将变成
    提交 文本 : <input type="文本" id="tbText" />
    <input type="提交" value="OK" />这样完成不符合HMTL格式了。所以需要限定 替代字符前不能是 =" 就可以了