PHP 从字符串中删除域名

标签 php string

我需要从字符串末尾删除域名。我尝试过以下代码:

    $domainNAME="example.com";
    $result="_xmpp-client._tcp.example.com..example.com"
    $string = $result;
    $string = str_replace(".".$domainNAME, " ", $string);

这里的结果是“_xmpp-client._tcp。”。但结果应该是“_xmpp-client._tcp.example.com.”。

我只需要从字符串末尾删除域名,如果域名存在于字符串中的任何位置,则不应删除它。如何更改代码?

任何帮助都值得赞赏!

最佳答案

不需要花哨的 preg 或 substr.. 只需使用 trim()功能:)

将从两端移除

echo trim($string,$domainNAME);

将从字符串末尾删除域名

echo rtrim($string,$domainNAME);

将从字符串开头删除域名

echo ltrim($string,$domainNAME);

示例

echo rtrim('demo.test.example.com',"example.com");
//@return demo.test

第二种方法

如果没有..那么使用预匹配:)。

$new_str = preg_replace("/{$domainNAME}$/", '', $str);

仅当 $domainNAME 位于 $str 末尾时,这才会替换 $str 中的 $domainNAME(var 后面的 $ 符号表示 AT 字符串末尾。

关于PHP 从字符串中删除域名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15916776/

相关文章:

string - 在 Ocaml 中将字符串连接到整数

javascript - 以正确的顺序附加字符串

string - Scala-大小写匹配部分字符串

php - Laravel 删除文件

php - 通过ajax发送数组到javascript

php - 在 PHP 中设置日期和时间变量

python - 使用 pyformat 进行条件格式化

javascript - 无法匹配示例表情符号。这可能是什么原因?

php - SQL语法错误

Javascript 变量不可见