Accent character problem
Diez B. Roggisch
deets at nospam.web.de
Fri Jun 20 10:38:15 EDT 2008
Sallu schrieb:
> Hi all and one
> i wrote this script, working fine without fail( just run it)
>
> import re
> value='This is Praveen'
> print value
> #value = 'riché gerry'
> #words=str(value.split()).strip('[]').replace(', ', '') ( here i tried
> to convert in to list and then back to string)
> #print words
> richre=re.compile(r'[a-zA-Z0-9]')
>
> if(richre.match(value)):
> print "Valid"
> else:
> print "Not allowed special characters"
>
> Output 1: (Fair)
> This is Praveen
> Valid
> but when i change the value like
> value='éhis is Praveen'
> then
>
> Output 2:(Fair)
> éhis is Praveen
> Not allowed special characters
> (because i wanted to check out the ascent(é) character so its working
> fine no issue)
>
> but when i give ascent(é) character in middle like
> value='This és Praveen'
>
> Output 3:(not fair)
>
> This és Praveen
> Valid
> even it have ascent character it should display message "Not allowed
> special characters"
> Please help me out.
You only test the *first* character. You need to modify your rex using a
+, like this:
richre=re.compile(r'[a-zA-Z0-9]+')
Only then it will match the whole word.
Diez
More information about the Python-list
mailing list