using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"(warning|error|note|help)(?:\[(.*)\])?\: (.*)\s+--> (.*):(\d+):(\d+)\n(?:((?:.+\n)+)\.+)?(?:[\d\s]+\|.*)*((?:\s+=.*)+)?";
string input = @"Compiling sample v0.1.0 (file:///home/sample/src/sample.rs)
error: cannot borrow immutable local variable `buffer` as mutable
--> src/sample.rs:29:32
|
26 | let buffer = String::new();
| ------ use `mut buffer` here to make mutable
...
29 | while ifile.read_line(&mut buffer).unwrap() > 0 {
| ^^^^^^ cannot borrow mutably
error: cannot borrow immutable local variable `buffer` as mutable
--> src/sample.rs:39:9
|
26 | let buffer = String::new();
| ------ use `mut buffer` here to make mutable
...
39 | buffer.clear();
| ^^^^^^ cannot borrow mutably
error[E0384]: re-assignment of immutable variable `buffer`
--> src/sample.rs:30:9
|
26 | let buffer = String::new();
| ------ first assignment to `buffer`
...
30 | buffer = buffer.replace(""\n"", "");
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ re-assignment of immutable variable
error: aborting due to 3 previous errors
error: Could not compile `sample`.
To learn more, run the command again with --verbose.";
foreach (Match m in Regex.Matches(input, pattern))
{
Console.WriteLine("'{0}' found at index {1}.", m.Value, m.Index);
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for C#, please visit: https://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex(v=vs.110).aspx