Wyrażenie regularne - białe znaki

0

Jak skonstruować wyrażenie regularne, które nie dopuszczałoby wyłącznie samych białych znaków ? W ogóle mogą występować, ale nie same. Inaczej - ma być string, ale nie pusty.

0

Coś prostego pokroju '.\S+.' nie zadziała? Przykład:

import re

for test in [ "zue  " , " zuo ", "     ", "abuse", 'i *uj' ]:

    match = re.match('(.*\S+.*)', test)

    if match is not None:
        print('"%s" - dopasowano "%s"' % (test, match.group(1)))
    else:
        print('"%s" - zuuooo, nima ;(' % test)

Wynik:

"zue  " - dopasowano "zue  "
" zuo " - dopasowano " zuo "
"     " - zuuooo, nima ;(
"abuse" - dopasowano "abuse"
"i *uj" - dopasowano "i *uj"
0

A może z drugiej strony - wyrażenie które łapie tylko białe znaki + negacja ?

!match("^\s*$")

1 użytkowników online, w tym zalogowanych: 0, gości: 1