Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用regex preg_Replace将一个空格和三个句点替换为三个句点?_Php_Regex - Fatal编程技术网

Php 使用regex preg_Replace将一个空格和三个句点替换为三个句点?

Php 使用regex preg_Replace将一个空格和三个句点替换为三个句点?,php,regex,Php,Regex,试图让它工作,但我的正则表达式生锈了,我在谷歌上搜索的东西似乎都没用 <?php echo preg_replace("/\s+/u", '...', $post->getPostExcerpt(12)) ?> 以上只是用点替换每个字符 我错过了什么?试试: <?php echo preg_replace("/\s\.{3}/u", '...', $post->getPostExcerpt(12)) ?> 尝试: 我要做的是将一个空格和三个点替换为三个点

试图让它工作,但我的正则表达式生锈了,我在谷歌上搜索的东西似乎都没用

<?php echo preg_replace("/\s+/u", '...', $post->getPostExcerpt(12)) ?>
以上只是用点替换每个字符

我错过了什么?

试试:

<?php echo preg_replace("/\s\.{3}/u", '...', $post->getPostExcerpt(12)) ?>
尝试:


我要做的是将
一个空格
三个点
替换为
三个点

$search = " ...";
$replace= '...';
print str_replace($search, $replace, $post->getPostExcerpt(12));


参见正则表达式:

我试图做的是将
一个空格
三个点
替换为
三个点

$search = " ...";
$replace= '...';
print str_replace($search, $replace, $post->getPostExcerpt(12));


请参阅正则表达式:

不要将正则表达式用于此简单替换。这将
空格…
替换为

echo str_replace(' ...', '...', $post->getPostExcerpt(12));
使用regex,您可以使用:

echo preg_replace('/ [.]{3}/', '...', $post->getPostExcerpt(12));

对于这个简单的替换,不要使用正则表达式。这将
空格…
替换为

echo str_replace(' ...', '...', $post->getPostExcerpt(12));
使用regex,您可以使用:

echo preg_replace('/ [.]{3}/', '...', $post->getPostExcerpt(12));


如果您要替换一个精确的字符串,那么为什么要使用regEx呢?您可以将“…”字符串替换为“…”您在使用它的哪个字符串,以及预期的输出是什么?请尝试
preg\u replace(“/\s+\.\.\.\.\.\./u”、“…”、$post->getPostExtrapt(12))
regex:
\s(\.{3})
;替换:
$1
您放弃了吗?如果您有一个确切的字符串要替换,为什么要使用regEx?您可以将“…”字符串替换为“…”您在使用它的哪个字符串,以及预期的输出是什么?请尝试
preg\u replace(“/\s+\.\.\.\.\.\./u”、“…”、$post->getPostExtrapt(12))
regex:
\s(\.{3})
;替换:
$1
您放弃了吗?可能不是
$search=“…”
?或者你的意思是你想用Asqii字符“…”来代替“…”?@derHugo,是的,你是对的,我只是不自觉地想了想。谢谢你指给我看。:)第二个有效。我在我的原始帖子中说str_replace出于某种原因没有检测到它。可能不是
$search=“…”
?或者你的意思是你想用Asqii字符“…”来代替“…”?@derHugo,是的,你是对的,我只是不自觉地想了想。谢谢你指给我看。:)第二个有效。我在我的原始帖子中说str_replace出于某种原因没有检测到它。方括号内的
[.]
是否不需要像-
[\.]
那样转义?一个诚实的好奇心…@Poiz:不,这不是因为在
[]
中它被视为一个句点/点,而不是与任何字符的特殊匹配。在
[.]
中,它将其视为文字
stru替换不适用于出于某种原因生成的这种类型的空间,这就是为什么我不能用第一种方法,好吧,那就不是问题中提到的空间。也许它是一个实体
?如果是这样,那么使用它。方括号内的
[.]
是否不需要像-
[\.]
那样转义?一个诚实的好奇心…@Poiz:不,这不是因为在
[]
中它被视为一个句点/点,而不是与任何字符的特殊匹配。在
[.]
中,它将其视为文字
stru替换不适用于出于某种原因生成的这种类型的空间,这就是为什么我不能用第一种方法,好吧,那就不是问题中提到的空间。也许它是一个实体
?如果是这样,那么就用这个。