我有这条线
a[link], a[link] a [link] text text text a [link] text a[link] text
所以我想找到文本之前的第一个链接并对它们进行一次操作并以特殊样式突出显示它们(在本例中,可能或多或少有三个)并找到在文本之后的其他链接文本并以不同的样式突出显示它们。
我只能找到前三个链接,但我不知道我做得怎么样
<?php $re = '/^(a\[(\w+[\s+]?)+\],?\s?)+/iu'; $str = 'a[link], a[link] a[link] text text text a[link] text a[link] text'; preg_match($re, $str, $matches, PREG_OFFSET_CAPTURE, 0); var_dump($matches); ?>
我现在将尝试给出一个说明性示例来说明所需的内容: 有这么一段文字
a[link1], a[link2] a[link3] 文本 文本 文本 a[link4] 文本 a[link5] 文本
在本文中,有指定为 a[...] 的链接。将来,我需要替换这些链接并将其变为以下形式:
前三个链接的类分配有值 style1。文本后面的链接已经有一个分配给 style2 的类值。
一开始,文本前面可以有三个链接,四个甚至一个,文本后面可以有任意数量、任意顺序的链接。
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号