-3

知道如何制作一个从数字中检索数万的正则表达式吗?

我的意思是所有正整数都应该返回整数除以 10000 向下舍入。对于 0 将是 0,对于 999 也将是 0,对于 12345678 将是 1234,依此类推。

我在想一系列的条件,比如

“如果数字在 1 到 4 位之间,则返回 0,否则,如果数字有 5 位,则返回第一个,否则,如果数字有 6,则返回第一个 2,依此类推”。

我的数字在 1 到 9.99 亿之间。

这是为了一个RewriteRulein htaccess

4

1 回答 1

0

这是一个非常简单的答案,我不确定为什么你的问题被标记了。我只能为你用 VB 或 C# 编写它,但你也许能明白这一点。

Dim rmTens As String = Regex.Replace(Regex.Match(input, "([\d,. ]*)(?:\d[,. ]*){4}(?:$|[^\d,. ])").Groups(1).Value, "[,. ]", "")
If rmTens = "" Then rmTens = "0"

这是一个快速的方法,但它会捕获所有数字、逗号、小数和空格(所有有效的数字字符),直到匹配三个数字(允许格式错误的混乱),而不是任何其他数字允许值。

于 2012-11-28T20:13:41.443 回答