簡體   English   中英

在 C# 中使用正則表達式提取特定單詞和第一個左括號后的數字

[英]Extract number after specific word and first open parenthesis using regex in C#

我想從一個以單詞 ID 開頭的句子中獲取一個字符串:

收到的索賠信件 ID:Sanjay Kumar (12345678 / NA123456789) 尊敬的客戶 查找報告

操作:身份證:Sanjay Kumar (12345678 / NA123456789)

經驗值:12345678

代碼

  var regex = new Regex(@"[\n\r].*Id:\s*([^\n\r]*)");
  var useridText = regex.Match(extractedDocContent).Value;

您可以使用

var regex = new Regex(@"(?<=Id:[^()]*\()\d+");

請參閱正則表達式演示

詳情

  • (?<=Id:[^()]*\() - 與緊接在Id: + 除() + (之外的零個或多個字符
  • \d+ - 一個或多個數字。

還考慮一種非后視方法:

var pattern = @"Id:[^()]*\((\d+)";
var useridText = Regex.Match(extractedDocContent, pattern)?.Groups[1].Value;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM