Php 如何根据特定单词拆分文本
我有一个文本多次包含“Article”一词,例如: 我的文字标题文章1布拉布拉布拉第2布拉布拉布拉 我想像这样拆分文本:Php 如何根据特定单词拆分文本,php,text,split,Php,Text,Split,我有一个文本多次包含“Article”一词,例如: 我的文字标题文章1布拉布拉布拉第2布拉布拉布拉 我想像这样拆分文本: Text1=Article 1 bla bla Text2=Article 2 bla bla ... 这可以通过以下方式实现: $parts = preg_split("/(?=Article\b)/",$text); 这可以通过以下方式完成: $parts = preg_split("/(?=Article\b)/",$text); 最简单的方法是使用explode
Text1=Article 1 bla bla
Text2=Article 2 bla bla
...
这可以通过以下方式实现:
$parts = preg_split("/(?=Article\b)/",$text);
这可以通过以下方式完成:
$parts = preg_split("/(?=Article\b)/",$text);
最简单的方法是使用
explode
然后,在每个“article”后面都有一个文本数组(不包括article!)最简单的方法是使用
分解
然后在每个“article”后面有一个数组,其中包含文本(不包含article!)简单:
$articles = explode("article", $text);
$text1 = $articles[0];
$text2 = $articles[1];
简单:
$articles = explode("article", $text);
$text1 = $articles[0];
$text2 = $articles[1];
与其尝试查找拆分模式,不如查找匹配的模式:
/Article.*?(?=Article|$)/
它匹配文章
,后面是任何内容,但不包括另一篇文章
或行尾
$str = 'some ething Article 1 2 3 Article 5 6 7';
preg_match_all('/Article.*?(?=Article)/', $str, $matches);
print_r($matches[0]);
输出:
Array
(
[0] => Article 1 2 3
[1] => Article 5 6 7
)
编辑
只需过滤掉紧跟数字的文章
:
preg_match_all('/Article \d+/', $str, $matches);
// $matches[0] contains "Article 1" and "Article 5"
与其尝试查找拆分模式,不如查找匹配的模式:
/Article.*?(?=Article|$)/
它匹配文章
,后面是任何内容,但不包括另一篇文章
或行尾
$str = 'some ething Article 1 2 3 Article 5 6 7';
preg_match_all('/Article.*?(?=Article)/', $str, $matches);
print_r($matches[0]);
输出:
Array
(
[0] => Article 1 2 3
[1] => Article 5 6 7
)
编辑
只需过滤掉紧跟数字的文章
:
preg_match_all('/Article \d+/', $str, $matches);
// $matches[0] contains "Article 1" and "Article 5"
希望其中一个有帮助:
$str = "My text title Article 1 bla bla Article 2 bla bla";
$strArray = explode('Article', $str);
echo '<pre>';
print_r($strArray);
echo '</pre>';
$strArray = split('Article', $str);
echo '<pre>';
print_r($strArray);
echo '</pre>';
$strArray = preg_split("/(?=Article\b)/",$str);
echo '<pre>';
print_r($strArray);
echo '</pre>';
$str=“我的文本标题文章1 bla bla第2 bla bla bla”;
$strArray=爆炸($Article',$str);
回声';
印刷费($strArray);
回声';
$strArray=拆分('Article',$str);
回声';
印刷费($strArray);
回声';
$strArray=preg_split(“/(?=Article\b)/”,$str);
回声';
印刷费($strArray);
回声';
希望其中一个有帮助:
$str = "My text title Article 1 bla bla Article 2 bla bla";
$strArray = explode('Article', $str);
echo '<pre>';
print_r($strArray);
echo '</pre>';
$strArray = split('Article', $str);
echo '<pre>';
print_r($strArray);
echo '</pre>';
$strArray = preg_split("/(?=Article\b)/",$str);
echo '<pre>';
print_r($strArray);
echo '</pre>';
$str=“我的文本标题文章1 bla bla第2 bla bla bla”;
$strArray=爆炸($Article',$str);
回声';
印刷费($strArray);
回声';
$strArray=拆分('Article',$str);
回声';
印刷费($strArray);
回声';
$strArray=preg_split(“/(?=Article\b)/”,$str);
回声';
印刷费($strArray);
回声';
问题不清楚。bla-bla
是文章标题的一部分吗?它们总是带有数字后缀的文章吗?标题可以是多个单词吗?重新表述你的问题;看看这是否仍然是你的意思:)问题不清楚。bla-bla
是文章标题的一部分吗?它们总是带有数字后缀的文章吗?标题可以是多个单词吗?重新表述你的问题;看看这是否仍然是你的意思:)