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
)