Php 如何在没有结束标记的自定义动态html标记之间获取文本

Php 如何在没有结束标记的自定义动态html标记之间获取文本,php,html,regex,parsing,Php,Html,Regex,Parsing,我的文本由多个自定义标记分隔,这些标记具有部分动态名称,并且没有结束标记 我需要的是在自定义标记之间获取文本的所有独立部分,而不是包括标记在内的所有部分 对于文本的最后一部分,我只能在标记之后获取文本,因为它没有结束标记 我见过很多类似的问题,但我觉得它们不足以解决我的问题 例如: <*fixedTagName|Dynamic part of tag name> // * and | are included in fixed part of tag name

我的文本由多个自定义标记分隔,这些标记具有部分动态名称,并且没有结束标记

我需要的是在自定义标记之间获取文本的所有独立部分,而不是包括标记在内的所有部分

对于文本的最后一部分,我只能在标记之后获取文本,因为它没有结束标记

我见过很多类似的问题,但我觉得它们不足以解决我的问题

例如:

<*fixedTagName|Dynamic part of tag name> // * and | are included in fixed part of tag name
                                   //dynamic part can have spaces between words

  Random text I need to get of unknown length

  some paragraphs of text can start like this(look bellow)

  » name: value
  » name: value

<*fixedTagName|Dynamic part of tag>

  More random text I need to get

<*fixedTagName|Dynamic part of tag>

  Final part of random text I need to get
//*和|包含在标记名的固定部分中
//动态部分在单词之间可以有空格
我需要获得未知长度的随机文本
文本的某些段落可以这样开头(如下所示)
»名称:值
»名称:值
我需要得到更多的随机文本
我需要得到随机文本的最后一部分

我认为这个StackOverflow答案充分解释了如何做到这一点:

要在正则表达式匹配之间获取文本,可以使用
preg\u split
函数:

$result = preg_split('/<\*[^|]+\|[^>]+>/', $input);
$result
将是一个字符串数组,如下所示:

Array
(
    [0] => 
    [1] =>  // * and | are included in fixed part of tag name
                                   //dynamic part can have spaces between words

  Random text I need to get of unknown length

  some paragraphs of text can start like this(look bellow)

  » name: value
  » name: value


    [2] => 

  More random text I need to get


    [3] => 

  Final part of random text I need to get
)

列出我可以使用的工具!==充分解释如何做到这一点。我以前就知道我可以使用正则表达式和/或解析器之类的东西,但这个问题有点独特而且非常复杂,可能是我目前无法解决的,所以我希望有更具体的东西。非常感谢!这一定是迄今为止我得到的最好的答案,它不仅给出了解决方案,还举例说明。我很高兴地投了赞成票,接受了这个答案。谢谢你的时间和努力!
Array
(
    [0] => 
    [1] =>  // * and | are included in fixed part of tag name
                                   //dynamic part can have spaces between words

  Random text I need to get of unknown length

  some paragraphs of text can start like this(look bellow)

  » name: value
  » name: value


    [2] => 

  More random text I need to get


    [3] => 

  Final part of random text I need to get
)