我使用正則表達式,但我不能做我的情況。我已經創建了像DLE一樣的引擎。 我有一個像[A],[/ A],[B] [/ B]等我用正則表達式的標籤像正則表達式:嵌套標籤
'\\[a\\](.*?)\\[/a\\]'si
或類似
'\\[a\\](.*?)(\\[/a\\])+'si
,它不工作我想如何。 我需要接收:
from '[a]delete[/a]' : ''
from '[a][b]delete[/b][/a]' : '',
from '[a][a]delete[/a][/a]' : '', with '\\[a\\](.*?)\\[/a\\]'si it returns '[/a]'
from '[b][a]delete[/a][b]' : '[b][/b]'
from '[b][a]delete[/a][b] [a]delete[/a]' : '[b][/b]'
from '[a]
delete
[a]
[b]delete[/b]
[/a]
delete
[/a]
[b]
[a]delete[/a]
nodelete
[/b]'
:
'[b]
nodelete
[/b]'
幫助我創建正確的正則表達式!
該語法看起來接近於HTML。並且請注意,[HTML不能用正則表達式解析](http://stackoverflow.com/a/1732454/1529630)。也許這也適用於你的語法。 – Oriol 2014-11-21 15:42:00
您的輸入是什麼?或者您的信息是在您的信息中輸入的?如果是這樣,你的預期產出是多少? 正如@Oriol指出的,你不能用RegEx解析HTML(和類似的結構),你可能需要一個遞歸函數,它可以使用RegEx – 2014-11-21 15:43:38
我可以爲我的任務編寫自己的函數。但我想知道:我可以在這個任務中使用正則表達式嗎? – tesst 2014-11-21 15:44:01