我正在调整一些文本的格式,有时我有一个字符串,其中有一个句子没有以点结尾。
为了这个目的,我正在运行各种检查,另外一个我想要的是“在新行之前的最后一个字符加点”。
我不知道如何形成这个正则表达式:]
$string = preg_replace("/???/", ".\n", $string);
发布于 2014-04-02 10:29:49
试试这个:
$string = preg_replace("/(?<![.])(?=[\n\r]|$)/", ".", $string);
负查找(?<![.])
检查以前的字符不是.
(?=[\n\r]|$)
正在检查下一个字符是字符串的换行符或结尾。
发布于 2014-04-02 10:49:15
就像这样,我想:
<?php
$string = "Add dot after last character before new line\n";
$string = preg_replace("/(.)$/", "$1.\n", $string);
print $string;
?>
这样,将在句子中的单词line
之后和\n
之前添加点。
发布于 2014-04-02 11:42:56
我会这样做:
$string = "Add dot after last character before new line\n";
$string = preg_replace("/([^.\r\n])$/s", "$1.", $string);
https://stackoverflow.com/questions/22808411
复制相似问题