加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP正则表达式查找模式但只替换一个字符

发布时间:2020-12-13 17:21:42 所属栏目:PHP教程 来源:网络整理
导读:我正在使用xpdf pdf2text将PDF转换为文本,除了一件事之外,它的工作原理很好:它将段落符号(?)转换为数字8.我需要找到一种方法来使用以下模式获取所有内容: preg_match_all('/b8d{1,2}-/','text'); 但只能从该模式中替换“8”.我已经尝试将匹配保存到数组
我正在使用xpdf pdf2text将PDF转换为文本,除了一件事之外,它的工作原理很好:它将段落符号(?)转换为数字8.我需要找到一种方法来使用以下模式获取所有内容:

preg_match_all('/b8d{1,2}-/','text');

但只能从该模式中替换“8”.我已经尝试将匹配保存到数组中,但是如何将它们重新插入到它们所属的文本中?

理想情况下,段落标记只能正确转换,但我尝试了几种不同的编码但没有成功;我认为一些pdf有嵌入字体.

关于如何在该模式中仅替换“8”的任何想法?我不能只替换所有8个,因为被引用的文章的页面或章节可能是8;但是段落没有80-something的危险(这就是我在8之后检查数字的原因).

谢谢.

解决方法

捕获组中其余模式并将其放回原位:

$str = preg_replace('/b8(d{1,2}-)/','replacement$1',$str);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读