Re: [问题] 要取代#16888 但不取代䇸

楼主: cutekid (可爱小孩子)   2017-01-18 15:40:14
regex: (?<!(&(?=#16888;)))#16888(?!((?<=&#16888);))
test code(Perl): http://codepad.org/CDiHQRqb
※ 引述《ThiefFan (不务正业的贼)》之铭言:
: /*
: 用php的preg_replace()
: 需要帮 #xxxxx 加连结
: 但原本写法会把 &#xxxx; 也加连结而不能正常显示该字符
: 应该怎么修正才对呢?目前试过的两种写法如下:
: */
: <pre><?
: $a="
: 测试preg #12829
: 有空格 #128 #129 #130
: 没空格#128#129#130
: 要取代#16888
: 但不取代&#16888;
: ";
: echo preg_replace('/#(\\d+)/', '<a href=de.php?no=\\1>#\\1</a>', $a);
: echo "↑会取代&#";
: echo preg_replace('/(?!&).#(\\d+)/', '<a href=de.php?no=\\1>#\\1</a>', $a);
: echo "↑会吃#前面字符";
: ?></pre>
作者: ThiefFan (不务正业的贼)   2017-01-20 21:30:00
感谢!!!!

Links booklink

Contact Us: admin [ a t ] ucptt.com