Dize ise I am Fine
bana olarak çıktı veriyor I
.
import re
string='hello I am Fine'
print(re.search(r'[A-Z]?',string).group())
Dize ise I am Fine
bana olarak çıktı veriyor I
.
import re
string='hello I am Fine'
print(re.search(r'[A-Z]?',string).group())
?
Yukarıdaki karakter veya sınıf veya mevcut olmayabilir belirtir. Ne zaman re.search
dize aramaya başlar, bu dizenin başında o sınıfı bulamazsa ... ve bu çünkü kabul edilebilir bir eşleşme olduğunu ?
. Bu sadece boş bir dize döndürüyor.
>>> re.search(r'[A-Z]?', 'hello I am Fine').group()
''
Eğer ilk harf bulmak istiyorsanız, bir kullanmayın ?
:
>>> re.search(r'[A-Z]', 'hello I am Fine').group()
'I'
Sen kullanabilirsiniz findall yöntemi.
Gönderen Python docs , bölüm 7.2.5.6
,
findall() matches all occurrences of a pattern, not just the first one as search() does.
Senin durumunda,
>>> re.findall(r'[A-Z]',"hello I am Fine")
['I', 'F']