3

私は次のような文字列を持っています:

'cathy is a singer on fridays'

4番目の単語を他の動詞に置き換えられるようにしたい

それで

'cathy is a dancer on fridays'

これを行う正しい方法は、正規表現を使用して 3 番目の空白に達したときに停止することだと思いましたが、任意の文字を受け入れる正規表現と * を使用してグループ化を行うことができます。私はそれを機能させることができないようです。

どんなアドバイスも役に立ちます。私はPythonが初めてなので、判断しないでください.また、正規表現はこれに適していますか、それとも別の方法を使用する必要がありますか?

ありがとうございました

4

6 に答える 6

2

いいえ、これには正規表現は必要ありません。下記参照:

>>> mystr = 'cathy is a singer on fridays'
>>> x = mystr.split()
>>> x
['cathy', 'is', 'a', 'singer', 'on', 'fridays']
>>> x[3] = "dancer"
>>> x
['cathy', 'is', 'a', 'dancer', 'on', 'fridays']
>>> " ".join(x)
'cathy is a dancer on fridays'

または、よりコンパクト:

>>> mystr = 'cathy is a singer on fridays'
>>> x = mystr.split()
>>> " ".join(x[:3] + ["dancer"] + x[4:])
'cathy is a dancer on fridays'
>>>

ここでの中心となる原則は.split、文字列のメソッドです。

于 2013-10-22T20:46:50.427 に答える
1

希望のピースを代用した後、紐を分割して結合することで、必要なものを取得できます

stringlist = 'cathy is a singer on fridays'.split()
stringlist[3] = 'dancer'
print(' '.join(stringlist))
于 2013-10-22T20:46:00.753 に答える