パターンnr:または/ nr:の間にこれらの文字列をすべて抽出する必要があります。誰でも助けてくれますか?Readでアシスト
文字列は、私が期待してい
nr:Organization/nr:Customer/nr:Agreement/nr:date/nr:coverage/nr:Premium/nr:Option/nr:OptionID
出力が
Organization, Customer, Agreement,...OptionID
パターンnr:または/ nr:の間にこれらの文字列をすべて抽出する必要があります。誰でも助けてくれますか?Readでアシスト
文字列は、私が期待してい
nr:Organization/nr:Customer/nr:Agreement/nr:date/nr:coverage/nr:Premium/nr:Option/nr:OptionID
出力が
Organization, Customer, Agreement,...OptionID
、re
モジュールを使用split
文字列とその長さが0で試合フィルタリングである:
import re
test_string = "nr:Organization/nr:Customer/nr:Agreement/nr:date/nr:coverage/nr:Premium/nr:Option/nr:OptionID"
columns = [x for x in re.split("/{0,1}nr:",test_string) if len(x) > 0]
print(columns)
['Organization', 'Customer', 'Agreement', 'date', 'coverage', 'Premium', 'Option', 'OptionID']
を私はこれが役立つことを願っていますここで
は、正規表現とスプリットを持つ方法です:
import re
string = 'nr:Organization/nr:Customer/nr:Agreement/nr:date/nr:coverage/nr:Premium/nr:Option/nr:OptionID'
x = filter(None, re.split('/*nr:', string))
print x
正規表現は「/」が先行nr:
(またはしない)を探します。 re.split
関数は空の要素を残して、filter
を適用すると、望ましい出力が得られます。
また、ここでのアクションでそれを参照してください。https://eval.in/656744
を使用すると、「再」モジュールを使用せずにそれをしたい場合は、これがうまくいくように、それが見えます:
test_string = 'nr:Organization/nr:Customer/nr:Agreement/nr:date/nr:coverage/nr:Premium/nr:Option/nr:OptionID'
columns = [f[3:] for f in test_string.split('/')]
print(columns)
あなたは何を試してみましたか?あなたのコードを見せて、あなたが抱えている困難を説明できますか? – idjaw