在PHP中随机化RegEx

时间:2008-11-05 13:59:12

标签: php regex

基本上我想使用RegEx来抓取文档中段落之间的内容。我认为表达式是:

<p>.+?</p>

假设它使用此RegEx抓取10个项目,然后我希望PHP随机选择其中一个,然后将其保存到变量中。有什么想法吗?

1 个答案:

答案 0 :(得分:6)

// Test data
$str = '<p>a1</p><p>b2</p><p>c3</p><p>d4</p>';

// Pull out all the paragraph contents into $matches
preg_match_all('_<p>(.+?)</p>_is', $str, $matches);

// $matches[0] contains all the <p>....</p>
// $matches[1] contains the first group, i.e. our (.+?)
// Echo a random one
echo $matches[1][array_rand($matches[1])];