正则表达式替换模式

时间:2013-04-02 08:50:49

标签: regex visual-studio-2010

我使用Microsoft Visual Studio并且文件中包含|分隔的文本。我需要找到一个特定的模式并将其从文件中删除

sometext|maxusage=sometext,,,,...|somemoretext

我希望隔离|后跟maxusage=,后跟任何文字到|

在上述情况下,我需要隔离

|maxusage=sometext,,,,...|

5 个答案:

答案 0 :(得分:1)

简单而单一的陈述

File.WriteAllText("c:\\test.txt", Regex.Replace(File.ReadAllText("c:\\test.txt"), "\|maxusage=[^\|]+\|", ""));

答案 1 :(得分:0)

这是C#代码我的朋友,

using System;
using System.Text.RegularExpressions;

public class Example
{
  public static void Main()
 {
   string pattern = @"\p{Sc}*(?<amount>\s?\d+[.,]?\d*)\p{Sc}*";
  string replacement = "${amount}";
  string input = "$16.32 12.19 £16.29 €18.29  €18,29";
  string result = Regex.Replace(input, pattern, replacement);
  Console.WriteLine(result);
 }
}

//该示例显示以下输出: // 16.32 12.19 16.29 18.29 18,29

答案 2 :(得分:0)

请注意,它确实有效(如果visual studio不实现延迟量词,则不会这样做):

/\|maxusage=.*?\|/

答案 3 :(得分:0)

使用此正则表达式\|maxusage.*?\|

答案 4 :(得分:0)

为什么不使用string.Split()来分割字符串并对其进行调查?

string[] parts = text.Split('|');
foreach(string s in parts){
//iterate of array and find what you are looking for
}