Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 用空格分隔的正数和负数int值的正则表达式_C#_Asp.net_.net_Regex - Fatal编程技术网

C# 用空格分隔的正数和负数int值的正则表达式

C# 用空格分隔的正数和负数int值的正则表达式,c#,asp.net,.net,regex,C#,Asp.net,.net,Regex,为了 但是,如何在数字之间添加空格,并首先接受任何数字,无论它是正数还是负数,这可能会起作用: positive number RegExp is ^[0-9]+$ negative number is ^-[0-9]+$ 这可能会起作用: positive number RegExp is ^[0-9]+$ negative number is ^-[0-9]+$ 我可以给你一个使用Ruby的模式对不起,我已经有一段时间没有使用C了。如果与扫描功能一起使用,此模式将捕获数字。我相信您可以用

为了

但是,如何在数字之间添加空格,并首先接受任何数字,无论它是正数还是负数,这可能会起作用:

positive number RegExp is ^[0-9]+$
negative number is ^-[0-9]+$
这可能会起作用:

positive number RegExp is ^[0-9]+$
negative number is ^-[0-9]+$

我可以给你一个使用Ruby的模式对不起,我已经有一段时间没有使用C了。如果与扫描功能一起使用,此模式将捕获数字。我相信您可以用C语言对捕获和组执行类似的操作:

模式=/^\s* [\-\+]? [0-9]+ \+ [\-\+]? [0-9]+ *$/x xs=[9,+9,-9,87,+87,-87,987,9+87,9-87,+987, -9 87, +9 +87, -9 +87, -9 87, 9 +9 -9, 9 +9 87, 9 +9 +87, 9 +9 -87, 9 +9 654, 9 +9 +654, 9 +9 -654, 9 -9 87, 9 -9 +87, 9 -9 -87, 9 -9 654, 9 -9 +654, 9 -9 -654, 9 87 +87, 9 87 -87, 9 87 654, 9 87 +654, 9 87 -654, 9 +87 -87, 9 +87 654, 9 +87 +654, 9 +87 -654, 9 -87 654, 9 -87 +654, 9 -87 -654, 9 654 +654, 9 654 -654, 9 +654 -654, +9 -9 87, +9 -9 +87, +9 -9 -87, +9 -9 654, +9 -9 +654, +9 -9 -654, +9 87 +87, +9 87 -87, +9 87 654, +9 87 +654, +9 87 -654, +9 +87 -87, +9 +87 654, +9 +87 +654, +9 +87 -654, +9 -87 654, +9 -87 +654, +9 -87 -654, +9 654 +654, +9 654 -654, +9 +654 -654, -9 87 +87, -9 87 -87, -9 87 654, -9 87 +654, -9 87 -654, -9 +87 -87, -9 +87 654, -9 +87 +654, -9 +87 -654, -9 -87 654, -9 -87 +654, -9 -87 -654, -9 654 +654, -9 654 -654, -9 +654 -654, 87 +87 -87, 87 +87 654, 87 +87 +654, 87 +87 -654, 87 -87 654, 87 -87 +654, 87 -87 -654, 87 654 +654, 87 654 -654, 87 +654 -654, +87 -87 654, +87 -87 +654, +87 -87 -654, +87 654 +654, +87 654 -654, +87 +654 -654, -87 654 +654, -87 654 -654, -87 +654 -654, 654 +654 -654] 每个{x | printf%15s:%s\n,x,x.scanpattern.inspect} 结果:

^[\-\+\s]*[0-9\s]+$

我可以给你一个使用Ruby的模式对不起,我已经有一段时间没有使用C了。如果与扫描功能一起使用,此模式将捕获数字。我相信您可以用C语言对捕获和组执行类似的操作:

模式=/^\s* [\-\+]? [0-9]+ \+ [\-\+]? [0-9]+ *$/x xs=[9,+9,-9,87,+87,-87,987,9+87,9-87,+987, -9 87, +9 +87, -9 +87, -9 87, 9 +9 -9, 9 +9 87, 9 +9 +87, 9 +9 -87, 9 +9 654, 9 +9 +654, 9 +9 -654, 9 -9 87, 9 -9 +87, 9 -9 -87, 9 -9 654, 9 -9 +654, 9 -9 -654, 9 87 +87, 9 87 -87, 9 87 654, 9 87 +654, 9 87 -654, 9 +87 -87, 9 +87 654, 9 +87 +654, 9 +87 -654, 9 -87 654, 9 -87 +654, 9 -87 -654, 9 654 +654, 9 654 -654, 9 +654 -654, +9 -9 87, +9 -9 +87, +9 -9 -87, +9 -9 654, +9 -9 +654, +9 -9 -654, +9 87 +87, +9 87 -87, +9 87 654, +9 87 +654, +9 87 -654, +9 +87 -87, +9 +87 654, +9 +87 +654, +9 +87 -654, +9 -87 654, +9 -87 +654, +9 -87 -654, +9 654 +654, +9 654 -654, +9 +654 -654, -9 87 +87, -9 87 -87, -9 87 654, -9 87 +654, -9 87 -654, -9 +87 -87, -9 +87 654, -9 +87 +654, -9 +87 -654, -9 -87 654, -9 -87 +654, -9 -87 -654, -9 654 +654, -9 654 -654, -9 +654 -654, 87 +87 -87, 87 +87 654, 87 +87 +654, 87 +87 -654, 87 -87 654, 87 -87 +654, 87 -87 -654, 87 654 +654, 87 654 -654, 87 +654 -654, +87 -87 654, +87 -87 +654, +87 -87 -654, +87 654 +654, +87 654 -654, +87 +654 -654, -87 654 +654, -87 654 -654, -87 +654 -654, 654 +654 -654] 每个{x | printf%15s:%s\n,x,x.scanpattern.inspect} 结果:

^[\-\+\s]*[0-9\s]+$

你能提供一些有效的和无效的例子吗?你能提供一些有效的和无效的例子吗?这样你就不会抓住第一个数字之后的任何数字,或者任何超过一个数字的第一个数字。嗯,如果他指的是像-9 3-4这样的一系列数字,那就对了。。。我只是认为他想要一个数字,但数字之间可以有空格…我认为上面关于需要一些测试数据的评论是一个很好的评论,这将消除这里问题中的许多困惑-我想我会建议在meta上向提问者提出建议。这对于一个星期天来说太多了我在这里提出了关于meta的建议,在第一个数字之后,你不会看到任何数字,或者任何第一个数字超过一位数。嗯,如果他指的是一系列数字,比如-93-4等等,那就对了。。。我只是认为他想要一个数字,但数字之间可以有空格…我认为上面关于需要一些测试数据的评论是一个很好的评论,这将消除这里问题中的许多困惑-我想我会建议在meta上向提问者提出建议。这对于一个星期天来说太多了我在这里就meta提出了建议。由于严格的测试方法,此答案应获得10票以上。@usr您的愿望只花了约6年时间就实现了:-由于严格的测试方法,此答案应获得10票以上。@usr您的愿望只花了约6年时间就实现了:-