正则表达式忽略字符串以特定字符串

时间:2017-01-02 18:40:20

标签: regex

我需要找到包含一些字符串的所有单词。例如" team"并用另一个字符串替换它。 该字符串将作为子字符串,例如:

  1. 专家团队
  2. 团队经理
  3. 一个大团队
  4. 我需要用字符串"hlhl$$@team"替换所有这些地方。

    我使用正则表达式:

    String exp= String.Format("({0}\\s)|({0}$)", "team);
    

    问题是已经"hlhl$$@team"的字符串与正则表达式匹配,并且被替换为"hlhl$$@hlhl$$@team" 如何忽略以hlhl$$@开头的字符串? 感谢。

1 个答案:

答案 0 :(得分:2)

Negative Lookbehind是你的朋友。

您希望team前面没有hlhl$$@。所以正则表达式是

(?<!hlhl\$\$@)team

此处$需要转义,因为它是正则表达式中的特殊字符。