正则表达式匹配引号内逗号后的所有内容

问题描述 投票:0回答:2

我有一个字符串:

dsa="123,45"

我正在尝试精确匹配 45。

我正则表达式

(?<=dsa=\x22)([^\x22,]+)
。当我使用 regex101 dot com 时,它准确地给出了 123 个匹配项 1 和第 1 组。如何修改上面的正则表达式以给我第 1 组并匹配 45 个匹配项 1,即逗号后面的所有内容。我不想在正则表达式中使用“

regex regex-lookarounds
2个回答
0
投票

试试这个:

(?<=,)\d+

匹配逗号后的 1 个或多个数字。


0
投票

假设您使用正确版本的正则表达式,并且我在这里收到您的问题是一个正则表达式,您可以使用它来获取数字 45 作为第一个捕获组:

/\d+,(\d+)/

有人会在 Javascript 中使用它,例如:

const inputString = "123,45";
const regex = /\d+,(\d+)/;
const match = inputString.match(regex);

正则表达式恢复您在 之前仅获得数字,然后仅在 , 之后获得数字。基本上是一个带有 , 和小数分母的浮点数。恕我直言,它写得尽可能简单,这样你就可以轻松理解它。

  • \d+ 表示 1 个或多个数字

  • ,字面意思是 ,

  • (\d+) 再次 1 或更多

    数字但作为捕获组

© www.soinside.com 2019 - 2024. All rights reserved.