Chciałbym wiedzieć, jak sprawdzić, czy ciąg znaków zaczyna się od „hello” w Pythonie.
W Bash zwykle robię:
if [[ "$string" =~ ^hello ]]; then
do something here
fi
Jak mogę osiągnąć to samo w Pythonie?
Chciałbym wiedzieć, jak sprawdzić, czy ciąg znaków zaczyna się od „hello” w Pythonie.
W Bash zwykle robię:
if [[ "$string" =~ ^hello ]]; then
do something here
fi
Jak mogę osiągnąć to samo w Pythonie?
Odpowiedzi:
aString = "hello world"
aString.startswith("hello")
Więcej informacji o startswith
.
RanRag już odpowiedział na twoje konkretne pytanie.
Jednak bardziej ogólnie, co robisz
if [[ "$string" =~ ^hello ]]
jest dopasowaniem wyrażenia regularnego . Aby zrobić to samo w Pythonie, zrobiłbyś:
import re
if re.match(r'^hello', somestring):
# do stuff
Oczywiście w tym przypadku somestring.startswith('hello')
jest lepiej.
Jeśli chcesz dopasować wiele słów do swojego magicznego słowa, możesz przekazać te słowa jako krotkę:
>>> magicWord = 'zzzTest'
>>> magicWord.startswith(('zzz', 'yyy', 'rrr'))
True
Uwaga : startswith
trwastr or a tuple of str
Zobacz dokumenty .
Można to również zrobić w ten sposób ..
regex=re.compile('^hello')
## THIS WAY YOU CAN CHECK FOR MULTIPLE STRINGS
## LIKE
## regex=re.compile('^hello|^john|^world')
if re.match(regex, somestring):
print("Yes")