我正在从解析的 PDF 文本中恢复标题。我想在大写字符所在的位置添加一个新行。如何用正则表达式做到这一点?这是文本的摘录:... Aanpassing aanvullend verkeersreglement. Advies - GoedkeuringMotiveringAanleiding en contextDe Zakstraat in het district ...$matches = preg_split('/(?=[A-Z][a-z]+[A-Z])/', $text, -1, PREG_SPLIT_NO_EMPTY);我想:... Goedkeuring#Motivering##Aanleiding en context#De Zakstraat ....
1 回答
慕雪6442864
TA贡献1812条经验 获得超5个赞
该模式(?=[A-Z][a-z]+[A-Z])断言右侧是单个大写 AZ,1+ 倍于小写 az,然后又是一个大写 AZ。
之前不会拆分,Aanleiding因为没有大写字母结尾。
您可能会做的是省略[A-Z]模式末尾的 ,并在后面添加一个积极的lookbehind(?<=[a-z])以检查小写字符 az。
该模式可能如下所示:
(?<=[a-z])(?=[A-Z][a-z])
正则表达式演示| php演示
$text = "... Aanpassing aanvullend verkeersreglement. Advies - GoedkeuringMotiveringAanleiding en contextDe Zakstraat in het district ...";
$matches = preg_split('/(?<=[a-z])(?=[A-Z][a-z])/', $text, -1, PREG_SPLIT_NO_EMPTY);
print_r($matches);
输出
Array
(
[0] => ... Aanpassing aanvullend verkeersreglement. Advies - Goedkeuring
[1] => Motivering
[2] => Aanleiding en context
[3] => De Zakstraat in het district ...
)
- 1 回答
- 0 关注
- 114 浏览
添加回答
举报
0/150
提交
取消