我需要在文件中找到如下字符串:
_["Some text"];
or
_.Plural(1, "Some text", "Some text plural);
我使用以下方法循环文件文本行:
using (StreamReader reader = File.OpenText(file)) {
String line;
while ((line = reader.ReadLine()) != null) {
}
}
在我需要获得的每一行中:
"Some text"
OR
"Some text", "Some text plural"
在这两种情况下,我都需要为每个实例获取文件中的行号。
如何使用正则表达式?
答案 0 :(得分:0)
使用这些SO帖子中的模式和逻辑:
https://stackoverflow.com/a/171483/1634205
https://stackoverflow.com/a/4892517/1634205
遵循本教程:
https://www.dotnetperls.com/regex-file
试试这个:
static void Main(string[] args)
{
Regex pattern = new Regex("\"(.*?)\"");
string file = @"C:\where\your-file\is\file.txt";
using (StreamReader reader = File.OpenText(file))
{
string line;
while ((line = reader.ReadLine()) != null)
{
foreach (Match match in pattern.Matches(line))
{
Console.WriteLine(match.Value);
}
}
}
Console.ReadLine();
}