我想寻求你的帮助..。
我有一个字符串,在这里我必须得到4.75。我尝试过许多regex表达式,但是我无法让它工作,并且浏览了很多示例。
Loan Amount Interest Rate
$336,550 4.75 %到目前为止,下面是我当前的表达式
1. (?<=Interest Rate\s*\n*)([^\s]+).+(?=%)我要买$336,550,4.75
2. ([^\s]+).(?=%)导致了多个输出。在我无法共享的整个文本中,还有%中的其他数据。
我只是在4.75之后。我知道我可以通过代码选择第一次匹配(我猜),但现在它不是一个选项。
提前感谢!
我试过不同的正则表达式
发布于 2022-11-24 06:49:51
你只需要提取"4.75 %“?试试这个:
(?<=Interest Rate\n\n\$\d{3},\d{3}\s)(\d{1,5}\.\d{1,5}\s%)发布于 2022-11-24 09:00:09
由于lookbehind中具有可变长度模式的regex可以工作,所以可以使用以下符合.NET的regex:
(?<=Interest Rate\s+\S+\s+)(\S+)(?=\s*%)见regex演示。
详细信息
(?<=Interest Rate\s+\S+\s+) -需要Interest Rate、一个或多个空白空间、一个或多个非空白空间以及立即位于当前位置左侧的一个或多个空白空间。(\S+) -第1组:一个或多个非空白字符(?=\s*%) -一个积极的前瞻性,需要零或多个空白空间,然后立即在当前位置右侧的%字符。发布于 2022-11-24 06:50:50
嗨请尝尝这个。
[0-9]+.[0-9]+https://stackoverflow.com/questions/74556507
复制相似问题