2011-06-17 38 views
2

我要让正则表达式来获得PHP代码之间的文本获取文本

为exsample我有这样的代码,我想TEXT 1和TEXT2

<?php some code ?> TEXT1 <?php some code {?> TEXT2 <?php }some code?> 
+0

TEXT1和TEXT2中的文本来自哪里? –

+0

@netcoder我忘了写text1可能是html – Ortal

回答

4

使用tokenizer,而不是正则表达式:

$input = '<?php some code ?> TEXT1 <?php some code {?> TEXT2 <?php }some code?>'; 

$tokens = token_get_all($input); 
foreach ($tokens as $token) { 
    if ($token[0] == T_INLINE_HTML) { 
     echo $token[1]; 
    } 
} 

输出:

TEXT1 TEXT2 
+0

+1。我会做什么。 –

+0

我忘了写text1可能是html – Ortal

+0

@Ortal:如果是的话仍然有效。 – netcoder

0

Mybe像

(?< =^|>)[^> <] +(?= < | $)