我正在尝试用名称替换名称中的最后一个空格。到目前为止,姓氏被删除了“Amy L. Example”变成了“Amy L。”
对此正则表达式的任何帮助将不胜感激。刚刚开始掌握它们的工作原理。
代码:
<?php $resume['name'] = preg_replace('/\s(\S*)$/', '<br />', $resume['name']); echo $resume['name'] ?>
答案 0 :(得分:3)
您需要将$1
放入替换字符串中,以便保留您捕获的单词,而不是删除。
答案 1 :(得分:1)
你告诉PHP 替换任何非空格字符后面的空格字符,放在字符串的末尾,加上<br />
,因此你的last space + last word
很明显被删除并仅用标签取代。
只需将其编辑为:
preg_replace('/\s(\S*)$/', ' \\1<br />', $name);
通过这种方式,您可以用空格,单词本身和标记替换last space + last word
。