Expression régulière pour la mise en correspondance non-blanc en Python

Je veux utiliser re.recherche pour extraire le premier ensemble de non-caractères espace. J'ai le texte suivant pseudoscript qui recrée mon problème:

#!/usr/bin/env python2.7
import re

line = "STARC-1.1.1.5             ConsCase    WARNING    Warning"
m = re.search('^[^\S]*?',line)
if m:
    print m.group(0)

Il semble être l'impression de l'espace au lieu de STARC-1.1.1.5

Donc autant que je le comprends, cette expression régulière est en train de dire:
Au début de la ligne, trouver un ensemble de nonwhitespace personnages, de ne pas être gourmand

J'étais sûr que ce serait le travail, la la documentation dit que je peux utiliser /S pour correspondre à des espaces dans [], donc je ne sais pas où est la question.

Maintenant, je sais, je sais c'est probablement ce qui fait un peu bizarre, pourquoi ne suis-je pas utiliser une autre fonction pour faire cela? Eh bien, il n'y a plus d'une façon à la peau d'un chat et je suis encore en train de les accrocher des expressions régulières en Python donc je voudrais savoir comment je peux utiliser ré.recherche pour extraire ce domaine dans ce mode.

  • en voici une autre ré.split ("\\s*", ligne)[0]
  • re c'est gourmand. il l'habitude de fractionnement sur une chaîne vide ici
  • J'ai essayé et obtenu FutureWarning: split() requires a non-empty pattern match. Avec \s+ je n'ai pas eu un avertissement.
  • j'ai aussi essayé en python 2.7 avec ipython et a obtenu le résultat souhaité
  • Mon test a été avec 3.5.2. J'ai également obtenu le résultat souhaité dans les deux cas, mais seulement \s+ n'ai pas de déclencher une alerte en re.py:203.