gpt4 book ai didi

java - 查找字符串中的小数

转载 作者:行者123 更新时间:2023-12-02 06:18:21 25 4
gpt4 key购买 nike

我有一个像这样的字符串:

Thank you for paying your Insurance bill of Rs 5896.48. Your transaction number for this payment is 981562359815. Your card will be debited on 2020-07-15.

我需要使用正则表达式单独提取交易号的小数点。小数位数可能会不时变化。

Pattern.compile("(?i)(transaction number *?)(.+?)(\\.)")

使用上面的模式,我尝试提取,但这种方法无法成功。有什么有效的方法吗?

最佳答案

假设字符串交易编号和您要搜索的编号之间可能没有点(.),请使用

Pattern regex = Pattern.compile("(?i)transaction number [^.]*\\b(\\d+)\\.");
Matcher regexMatcher = regex.matcher(subjectString);
if (regexMatcher.find()) {
ResultString = regexMatcher.group(1);
}

说明:

(?i)    # case insensitive matching mode
transaction\ number # Match this literal text
[^.]* # Match any number of characters except dots
\b # Match the position at the start of a number
(\d+) # Match a number (1 digit or more), capture the result in group 1
\. # Match a dot

如果您只想查找交易编号之后的第一个数字,请使用

Pattern.compile("(?i)transaction number\\D*(\\d+)")

\D 匹配任何非数字字符。

关于java - 查找字符串中的小数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21250448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com