Tach!
(Und [0-9] könnte man noch zu \d abkürzen.)
Nicht unbedingt. Hängt von der Sprache ab.
Gesucht ist eine Lösung für PHP und keine universelle, also passt das.
Ansonsten: Mitnichten. \d steht für eine Ziffer, und Ziffern sind weitaus mehr Zeichen als [0-9], bspw. [٠١٢٣٤٥٦٧٨٩].
Ja und? Rein praktisch dürft das vermutlich keine Rolle spielen (sprich: in den Daten des OP). Außerdem haben wir den UTF-8-Modifizierer u nicht angegeben, also findet \d nur die ASCII-Ziffern.
S.a. dieses und jenes.
Beziehe sich auf Python und C#/.NET - hier nicht besonders relevant.
dedlfix.