文字列が " " または "," で始まるかどうかをチェックする関数を作成し、たとえば文字に達するまでそれらを削除したい
弦を張りたい
" , , abcd" into
"abcd"
or ",,,,, abcd" into
"abcd"
文字列が " " または "," で始まるかどうかをチェックする関数を作成し、たとえば文字に達するまでそれらを削除したい
弦を張りたい
" , , abcd" into
"abcd"
or ",,,,, abcd" into
"abcd"
lstrip() 関数を次のように使用します。
>>> test = " , , abcd"
>>> test.lstrip(" ,")
'abcd'
私に思い出させてくれた人に感謝します。
strip() 関数は、先頭と末尾の文字の両方を削除します
lstrip() 関数は先頭のもののみを削除します
rstrip() 関数は、末尾のもののみを削除します。
strip()
両側からlstrip()
ストリップし、左側からのみストリップすることに注意してください。
>>> " , , abcd".lstrip(' ,')
'abcd'
>>> ",,,,, abcd".lstrip(' ,')
'abcd'
In [15]: s = " , , abcd"
In [23]: s.strip(', ')
Out[23]: 'abcd'
In [24]: s = ",,,,, abcd"
In [25]: s.strip(', ')
Out[25]: 'abcd'
ここに掲載されているソリューションは、スペースとコンマのみの場合に機能します。英数字以外の文字をすべて削除したい場合は、次のような正規表現を使用できます。
pattern = re.compile(r'^[^\w]+(.*?)[^\w]+$')
または、許可したい文字のみの場合は、次のように置き換え\w
ますA-Za-z
。
pattern = re.compile(r'^[^A-Za-z]+(.*?)[^A-Za-z]+$')
今すぐ使用するには、次のようにします。
str = re.sub(pattern, '\\1', str)
これを行うには、分割関数を使用する必要があります。
文字列 = "、、、、、abcd"
print (string.split(' '))[-1]