gpt4 book ai didi

python - 整数和整数的正则表达式?

转载 作者:太空狗 更新时间:2023-10-29 19:31:39 24 4
gpt4 key购买 nike

我正在尝试检测字符串中的所有整数和整数(以及许多其他内容)。以下是我目前使用的正则表达式:

整数:r[0-9]+"

整数:r"[+,-]?[0-9]+"

问题如下:

  1. 整数正则表达式也检测负数,这是我做不到的。我该如何解决这个问题?如果我在正则表达式的开头使用空格,我只会得到正数,但我会在输出的开头得到一个空格!
  2. 对于整数,我想检测格式为 +[0-9] 的正数,但不带符号存储它们。
  3. 对于整数,我想存储任何用符号检测到的正整数,无论​​它是否存在于原始字符串中。

现在差不多完成了:最后一件事,我有一个字符串,上面写着“Add 10 and -15”。我想将整数存储在列表中。我使用 findall() 这样做。在存储数字时是否可以将“10”存储为“+10”

最佳答案

对于正整数,使用

r"(?<![-.])\b[0-9]+\b(?!\.[0-9])"

解释:

(?<![-.])   # Assert that the previous character isn't a minus sign or a dot.
\b # Anchor the match to the start of a number.
[0-9]+ # Match a number.
\b # Anchor the match to the end of the number.
(?!\.[0-9]) # Assert that no decimal part follows.

对于有符号/无符号整数,使用

r"[+-]?(?<!\.)\b[0-9]+\b(?!\.[0-9])"

单词边界 \b 是确保整个数字匹配的关键。

关于python - 整数和整数的正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16774064/

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