我有一個字符串像定界符,字符串替換文本與使用正則表達式
string str = "(50%silicon +20%!(20%Gold + 80%Silver)| + 30%Alumnium)";
我需要這將在更換之間的內容的正則表達式!和|用空字符串。結果應該是(50%silicon +20% + 30%Alumnium)
。
如果字符串中包含類似的信息(包含嵌套的分隔符):
string str = "(50%silicon +20%!(80%Gold + 80%Silver + 20%!(20%Iron + 80%Silver)|)|
+ 30%Alumnium)";
結果應該是(50%silicon +20% + 30%Alumnium)
- 忽略嵌套的分隔符。
我試過以下的正則表達式,但它不會忽略嵌套:
Regex.Replace(str , @"!.+?\|", "", RegexOptions.IgnoreCase);
你應該真正發揮作用的你的解釋和問題的格式。 – alexn
你已經試過了什麼? – ilivewithian
當然,我會努力處理你提到的事情。 Alex我嘗試了下面給出的方法,Regex.Replace(str,@「!。+?\ |」,「」,RegexOptions.IgnoreCase);當嵌套的delimeters出現時,問題就來了。嵌套的delimeters應該被忽略。 – Shah