我必須在 pdf 中找到一個小數,它位于“費用”欄下。所以,我遇到了正則表達式來找到工作正常的小數。但是在其中一個 pdf 中,我有以下格式。Pdf 文本 -費用(國家)18181 和 75/100 18,181.75 預計 - 18,181.75用于在文本“Charge”之后查找小數的正則表達式:(Charge ([0-9]*)(\,?[ ]?[0-9])+(.[0-9]+))所以,我想忽略“費用”和小數點之間的任何內容。并顯示十進制數。有什么幫助嗎?情況 2:“18,181.75”有時也可能出現在“Charge”之前。就像“18,181.75 在這里收取一些文字......”
3 回答

慕妹3146593
TA貢獻1820條經驗 獲得超9個贊
您可以使用 .NET regex unlimited-width lookbehinds:
Regex.Match(s, @"(?<=\bCharge\b.*)\d[\d,]*\.\d+|\d[\d,]*\.\d+(?=.*?\bCharge\b)")
請參閱正則表達式演示
細節
(?<=\bCharge\b.*)\d[\d,]*\.\d+
- 一個以 a 開頭的位置Charge
作為一個完整的單詞,后面有換行符以外的字符,然后匹配一個數字,后跟 0+ 個逗號或數字,然后是一個點和 1+ 個數字|
- 或者\d[\d,]*\.\d+(?=.*?\bCharge\b)
- 一個數字后跟 0+ 個逗號或數字,然后是一個點和 1+ 個數字,之后應該跟除換行符之外的任何 0+ 個字符,盡可能少,然后Charge
是一個完整的單詞

瀟湘沐
TA貢獻1816條經驗 獲得超6個贊
那這個呢 :
(?<=[Cc]哈爾格。)([0-9] ,[0-9] .[0-9] )|[0-9] ,[0-9] .[0-9] (?= \s [Cc]harge)
- 3 回答
- 0 關注
- 111 瀏覽
添加回答
舉報
0/150
提交
取消