gpt4 book ai didi

c# regex 只获取字符串中的负数

转载 作者:太空宇宙 更新时间:2023-11-03 12:08:26 25 4
gpt4 key购买 nike

所以我的任务是在我的字符串中只选择负数。但是,有一个大问题。我的字符串由不同的减号组成(一些用于负数,一些用于减法)。

如果减号前没有更多数字,我的想法是得到负数。我的正则表达式模式:

(\d{0}-)?\d+

同样的模式并不像我想的那样:

((?!\d)-)?\d+

然后我在这个文本上测试这个模式:

-1 2 (33-44)

我的预期:-1 2 33 44

结果:-1 2 33 -44

如您所见,最后一个减号用于减法,它并不意味着负数。

最佳答案

使用 Negative Lookbehind 可以获得预期的结果( ?<! ),检查 - 前面是否有一个或多个数字:

(?<!\d+)-?\d+

Example

为了只匹配字符串中的负数,您需要制作 -要求:

(?<!\d)-\d+

Example

关于c# regex 只获取字符串中的负数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53676392/

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