.Net正则表达式 - 从两组中的一组中提取数据

时间:2016-08-12 19:21:36

标签: .net regex

鉴于以下两组数据和.Net正则表达式的限制,没有替代和无编程方法,我如何从用户信息组而不是发票信息组中捕获数据(姓氏或名字)?当我构造一个正则表达式时,总会出现两个结果。

User Information:
Title:                Product Specialist
Last Name:            Smithson
First Name:           Robert
Invoice Information: 
Title:                Buyer
Last Name:            Moneypenny
First Name:           Penelope

我可以使用以下表达式轻松地从发票组中提取数据:(?<=Invoice\sInformation\:(.*\r\n)*Last\sName\:\s*).*,但问题是第一组。

1 个答案:

答案 0 :(得分:0)

不确定这是否适合您,因为它引用“invoice”部分作为标记,以了解停止收集第一个名称字段的位置,因此预计发票部分将遵循用户部分。我假设您想要提取所有信息,而不仅仅是提取一个字段:

User Information:\s+Title:\s+(.*?)\s+Last Name:\s+(.*?)\s+First Name:\s+(.*?)\s+Invoice