我有一个字符串匹配问题。在括号内搜索精确字符串的正则表达式
System.IO.StreamReader objReader = new System.IO.StreamReader(pagePath);
string content = objReader.ReadToEnd();
objReader.Close();
string stringToSearch = "PO";
string PatternToMatch = @"(" + stringToSearch + ")";
ReplaceText = "<a href ='#'>" + stringToSearch + "</a>";
content = Regex.Replace(content, PatternToMatch, ReplaceText);
// writing the content to the same file
StreamWriter writer = new StreamWriter(pagePath);
writer.Write(content);
writer.Close();
在这里,首先我正在读取整个页面内容并将其存储在一个可变内容中。 然后,我在整个页面中搜索一个字符串PatternToMatch。
如果存在字符串匹配,则用提供的括号替换括号内的那些单词。
如果有与左括号匹配的字符串,那么它工作正常。但在某些地方,用 代替没有括号的单词。 那么,我应该如何限制它。
假设,有一个字符串这样 -
BANGLORE POP is backed up with DELHI POP as backup gateway.
在这里,它与锚标记代替PO但没有“(”和“)”,为什么在这里失败。
请建议正则表达式匹配圆括号内的确切词。
括号是正则表达式语言中的一个特殊字符。一个真正的括号,你需要在括号“\(”和“\)”之前加一个反斜杠。 – jdweng
您是否试图只在括号中或两者中都使用括号和不使用括号? –