2016-07-06 7 views
1

この形式のタグを見つけるパターンは、<。*:。*>です。 ネストされたタグから、子タグのみを取ります。 ここで角括弧(<と>)を '/ <'と '/>'から区別する必要があります。 同じパターンでこれを実行できる方法はありますか?Pythonで/ <from <と区別する

例:入力文字列

<testing this> any text </<this is not a tag>any text<this will fail/>> 

出力:

['<testing this>','</<this is not a tag>','<this will fail/>>'] 

任意の提案は私に知らせてください。

+3

それはあなたが正規表現で[X] HTMLを解析しようとしている不快なように見えます。 [しないでください。](http://stackoverflow.com/a/1732454/3001761)パーサーを使用する、それは彼らのためだ! – jonrsharpe

+1

RegExを使用する場合は、LookBehindを使用する必要があります。 – CodenameLambda

+0

'/ <'はどういう意味ですか?あなたは ' Aprillion

答えて

0

使用このパターン:

(?<!/)<.*?(?<!/)> 

(?<!/)は、実際に文字を消費することなく、各<または>の左側に直接スラッシュがない保証否定後読みです。

Check this pattern out on regex101.com

関連する問題