1

好吧,我有一个大文件,有一些内容需要分隔,内容位于 and 之间 - - - - - - - - - - [ عنوان ]- - - - - - - - - - [ انتهاى عنوان ] 有什么方法可以使用正则表达式和 php 来获取这些内容?

确切的格式是这样的:

- - - - - - - - - - [ عنوان ]
في حد اللواط
- - - - - - - - - - [ انتهاى عنوان ]

ومنها قوله سبحانه : ولوطا إذ قال لقومه : أتأتون الفاحشة وأنتم تبصرون أئنكم لتأتون
الرجال شهوة من دون النساء بل أنتم قوم تجهلون ، فما كان جواب قومه إلا أن قالوا أخرجوا

- - - - - - - - - - [ عنوان ]
في حرمة اللواط
- - - - - - - - - - [ انتهاى عنوان ]
في حرمة اللواط
ثم إنه لا شك في حرمة اللواط بل إن حرمته من ضروريات الدين ودل
عليها الكتاب المبين ( 1 ) وسنة سيد المرسلين وأهل بيته الطاهرين صلوات الله

继续...谢谢

4

1 回答 1

2

使用此代码,

$lines = preg_split("/[\r\n]+/u", $str, -1, PREG_SPLIT_NO_EMPTY);
$data = array();
$start = '
    - - - - - - - - - - [ عنوان ]
    ';
$end = '
    - - - - - - - - - - [ انتهاى عنوان ]';
$start = trim($start);
$end = trim($end);
$process = false;
foreach($lines as $line){
    if(mb_strpos($line, $start, 0, "utf-8")!==false){
        $process=true;
    }elseif(mb_strpos($line, $end, 0, "utf-8")!==false){
        $process=false;
    }elseif($process){
        $data[] = $line;
    }
}
print_r($data);

笔记:

  1. 由于 LTR 方向,很难输入确切的短语。所以我使用修剪技术。

样本

于 2012-04-05T08:58:24.630 回答