Expression régulière - 4 chiffres à la suite, mais ne peuvent pas être tous des zéros

Je suis à la recherche d'une solution qui peut exclusivement être fait avec une expression régulière. Je sais que ce serait facile, avec des variables, des sous-chaînes, etc.

Et je suis à la recherche d'PCRE style de syntaxe regex même si je mentionne vim.

J'ai besoin d'identifier des chaînes avec 4 chiffres, et ils ne peuvent pas être tous des 0. Si les chaînes de caractères suivantes serait un match:

0001 
1000 
1234 
0101

Et ce ne serait pas:

0000

C'est une chaîne qui va se produire à un endroit déterminé, au sein d'une grande chaîne, si ce qui compte; je ne pense pas qu'il devrait. Par exemple

xxxxxxxxxxxx0001xxxxx
xxxxxxxxxxxx1000xxxxx
xxxxxxxxxxxx1234xxxxx
xxxxxxxxxxxx0101xxxxx
xxxxxxxxxxxx0101xxxxx
xxxxxxxxxxxx0000xxxxx

source d'informationauteur user210757