用于提取要匹配的特定部分的正则表达式
Regex for extracting certain part to be match
我正在尝试使用正则表达式从字符串中提取某些数据。字符串如下所示:
some description points goes here
Experience
Company Name
1 year 4 months
software Developer
April 2020 - Present (1 year 1 month)
City Name, State Name, country Name
some description points goes here
StringBuilder sb = new StringBuilder();
string pdfData = string.Empty, pdfData2 = string.Empty;
Regex re = new Regex(regexPattern, RegexOptions.IgnoreCase);
using (PdfReader reader = new PdfReader(path))
{
for (int pageNo = 1; pageNo <= reader.NumberOfPages; pageNo++)
{
ITextExtractionStrategy strategy = new SimpleTextExtractionStrategy();
pdfData += PdfTextExtractor.GetTextFromPage(reader, pageNo, strategy);
Match match = re.Match(pdfData);
if (match.Success)
{
pdfData2 += match.Value;
}
}
}
我想提取公司名称、持续时间(1 年 4 个月)和名称(软件开发人员),其中此正则表达式模式匹配(2020 年 4 月 - 现在(1 年 1 个月))。当这个模式匹配时,我想得到这个模式之前的三行。
我试过了string regex Pattern = @"[ADFJMNOS][a-z]{2,8}\s[12][0-9]{3}\b";
。这只让我 2020 年 4 月。
I want to get three lines before this pattern.
I have tried string regex Pattern = @"[ADFJMNOS][a-z]{2,8}\s[12][0-9]{3}\b";
如果您在模式字符串的开头插入 ((.*\n){3})
,match.Groups[1]
将包含所需的 此模式前三行 .
我正在尝试使用正则表达式从字符串中提取某些数据。字符串如下所示:
some description points goes here
Experience
Company Name
1 year 4 months
software Developer
April 2020 - Present (1 year 1 month)
City Name, State Name, country Name
some description points goes here
StringBuilder sb = new StringBuilder();
string pdfData = string.Empty, pdfData2 = string.Empty;
Regex re = new Regex(regexPattern, RegexOptions.IgnoreCase);
using (PdfReader reader = new PdfReader(path))
{
for (int pageNo = 1; pageNo <= reader.NumberOfPages; pageNo++)
{
ITextExtractionStrategy strategy = new SimpleTextExtractionStrategy();
pdfData += PdfTextExtractor.GetTextFromPage(reader, pageNo, strategy);
Match match = re.Match(pdfData);
if (match.Success)
{
pdfData2 += match.Value;
}
}
}
我想提取公司名称、持续时间(1 年 4 个月)和名称(软件开发人员),其中此正则表达式模式匹配(2020 年 4 月 - 现在(1 年 1 个月))。当这个模式匹配时,我想得到这个模式之前的三行。
我试过了string regex Pattern = @"[ADFJMNOS][a-z]{2,8}\s[12][0-9]{3}\b";
。这只让我 2020 年 4 月。
I want to get three lines before this pattern.
I have tried
string regex Pattern = @"[ADFJMNOS][a-z]{2,8}\s[12][0-9]{3}\b";
如果您在模式字符串的开头插入 ((.*\n){3})
,match.Groups[1]
将包含所需的 此模式前三行 .