正负整数的正则表达式模式

9

我正在尝试在XSD中找到既允许正整数又允许负整数的正则表达式模式。

我的当前代码只允许正整数。

xs:pattern value="[0-9]{0,10}"

@ser3425746 你不能在前面加上可选的负号吗? - Eugene
整数是否允许以零开头?000129501是否有效? - zzzzBov
1
"" 不是正整数 :-) 你应该从 [0-9]{1,10} 或者更好的 [1-9][0-9]{0,9} 开始(假设你想要长度限制),然后在前面加上可选的负号 -? - paxdiablo
3个回答

14

假设您只在数字前面提到一个可选的负号:

xs:pattern value="-?[0-9]{0,10}"

5
使用\d符号可以使其更加简单:
xs:pattern value="-?\d+"

-1

如果你使用Python: 例如re.findall:

regex=re.findall(r'(-?[\d]+)',somestring)

*输出: [负整数,整数]


这个问题是关于 XSD 而不是 Python。 - clemens
但实际上意思是一样的。例如“-?(0-9){0,9})”.. :) - juandisay

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接