需要正则表达式来提取字符串中的第5到第8个字符

时间:2011-07-12 07:57:49

标签: regex unix plsql

需要UNIX正则表达式来提取第4到第8个字母。

例如:文件15870712.iis 如果我们想提取Ist 3位数,我们可以给出 '^([0-9] [0-9] [0-9])'> 158

我需要第5个6号,7号和8号小号。 > 0712

3 个答案:

答案 0 :(得分:6)

$letters = substr($string, 4, 4);

它没有使用正则表达式,但确切地说,你想要的是什么。根据你的问题,绝对不需要复杂的模式匹配。

答案 1 :(得分:4)

字母或任何字符?如果是后者:

/^....(....)/

答案 2 :(得分:1)

这将匹配位置5到8的数字,并且会消除前4个位置上的任何字符。

^.{4}([0-9]{4})

如果你需要前4个位置也是数字,你可以改用:

^[0-9]{4}([0-9]{4})