gpt4 book ai didi

sql-server - Int32 的正则表达式

转载 作者:行者123 更新时间:2023-12-01 22:41:47 25 4
gpt4 key购买 nike

我正在尝试为 Int32 数字编写正则表达式。我考虑过编写一个正则表达式来匹配 -2,147,483,648 和 2,147,483,647 之间的任何数字,但我不知道如何编写一个范围从负值到正值的表达式..

有什么想法吗?

最佳答案

要获取您指定范围内的负值和正值,您可以这样做:

编辑:数字可以从 0 开始(更正),数字范围从 -2147483648 到 2147483647 而不是 -2147483647 到 2147483648(更正)

^(
-?\d{1,9}|
-?1\d{9}|
-?20\d{8}|
-?21[0-3]\d{7}|
-?214[0-6]\d{6}|
-?2147[0-3]\d{5}|
-?21474[0-7]\d{4}|
-?214748[012]\d{4}|
-?2147483[0-5]\d{3}|
-?21474836[0-3]\d{2}|
214748364[0-7]|
-214748364[0-8]
)$

逐行注释:

^(                  //start of line, or it will match part of the number and not the whole one
-?\d{1,9}| //get any number with 9 digits
-?1\d{9}| //get any number with 10 digits starting with 1
-?20\d{8}| //get any number with 10 digits starting with 20
-?21[0-3]\d{7}| //get any number with 10 digits starting with 21
// (and the third digit in the range 0-3)
-?214[0-6]\d{6}| //I think from now on it is understood
-?2147[0-3]\d{5}|
-?21474[0-7]\d{4}|
-?214748[012]\d{4}|
-?2147483[0-5]\d{3}|
-?21474836[0-3]\d{2}|
214748364[0-7]| //max corner case
-214748364[0-8] //min corner case
)$

关于sql-server - Int32 的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12154565/

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