我必须在 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 关注
- 88 浏览
添加回答
举报
0/150
提交
取消