は私がcom-devices.lnx.1.0-dev
のようなものを持っている場合しかし、それは始まり、私はそれがcom-devices.lnx
を印刷することを期待として出力com
からから削除し、私は端から-dev.*
と-rel.*
を削除し、そこから次のコードを持って、下記branch3参照してください... dev。*を最後から削除するには?文字列の最後から文字を削除する方法はありますか?
import re
chars_to_remove = ['-dev.*','-rel.*'] # modify char to remove here
def remove_char(s):
return re.sub("({})$".format('|'.join(chars_to_remove)), '', s)
branch1 = 'bt.lnx.2.1-dev.1.0'
branch2 = 'bt.lnx.2.1-rel.1.0'
branch3 = 'com-devices.lnx.1.0-dev'
print remove_char(branch1) # 'bt.lnx.2.1'
print remove_char(branch2) # 'bt.lnx.2.1'
print remove_char(branch3) # should print com-devices.lnx.1.0
をしたいです。それはGREP 1-0-1のようなものです。 – usr2564301
あなたは 'dev。*'を削除したいと言っていますが、 'com-devices.lnx.1.0-dev'と入力して' com-devices.lnx'を出力したいとします。しかし、それは 'dev。* 'を削除していないので' * -dev'を削除しています!では、あなたの入力と出力は正確には何ですか? –
@JohnZwinck - 各印刷後にコメントとして希望の出力を追加しました。既存のコードはbranch1とbranch2で動作しますが、branch3では失敗します。すべて同じ作業が必要です。 – user3508811