知道如何制作一个从数字中检索数万的正则表达式吗?
我的意思是所有正整数都应该返回整数除以 10000 向下舍入。对于 0 将是 0,对于 999 也将是 0,对于 12345678 将是 1234,依此类推。
我在想一系列的条件,比如
“如果数字在 1 到 4 位之间,则返回 0,否则,如果数字有 5 位,则返回第一个,否则,如果数字有 6,则返回第一个 2,依此类推”。
我的数字在 1 到 9.99 亿之间。
这是为了一个RewriteRule
in htaccess
。
这是一个非常简单的答案,我不确定为什么你的问题被标记了。我只能为你用 VB 或 C# 编写它,但你也许能明白这一点。
Dim rmTens As String = Regex.Replace(Regex.Match(input, "([\d,. ]*)(?:\d[,. ]*){4}(?:$|[^\d,. ])").Groups(1).Value, "[,. ]", "")
If rmTens = "" Then rmTens = "0"
这是一个快速的方法,但它会捕获所有数字、逗号、小数和空格(所有有效的数字字符),直到匹配三个数字(允许格式错误的混乱),而不是任何其他数字允许值。