如标题所示,哪一个更适合匹配数字[[:digit:]]或[0-9] ?
我正在使用bash shell
谢谢 :)
必须使用[[:digit:]]的唯一原因是支持使用非0-9数字的区域设置。 例如阿拉伯语 – 印度语数字: ٠١٢٣٤٥٦٧٨٩ (Unicode U + 0660到U + 0669)。 否则,对于印度 – 阿拉伯数字0123456789 , [0-9]与[[:digit:]]同样适用。
# time grep -oE '[[:digit:]]' /etc/services ... real 0m0.029s user 0m0.017s sys 0m0.013s # time grep -oE '[0-9]' /etc/services ... real 0m0.029s user 0m0.016s sys 0m0.012s
我可以写一个快速的脚本来平均他们,我打赌我会发现平均值是相同的,但它肯定给你的想法。