忽略

2016-08-05 169 views
2

例如,我有一个数据库表在PHP数据库中包含的值中的字符如下:忽略

enter image description here

我要显示在HTML L-NAME值,而是通过消除“先生”,而不改变数据库中包含的值。有没有办法使用PHP脚本来做到这一点?

回答

5

使用preg_replace()

echo preg_replace('/(mr\.\s+|ms.\s+)(.*)/ui', '$2', 'Mr. Bean'); 

// Mr. Bean -> Bean 
// Bean -> Bean 
// Ms. Stone -> Stone 
// Jack Bean -> Jack Bean 
+0

你能解释一下功能:\ S +)(。 *)/ ui','$ 2'在脚本上?对不起,我不明白。 – Underdog

+0

'\ .'被转义点。 '\ s +'是分隔符一次或多次('+')。 '|'是从表示的表达式中选择一个。 '。*'是任意符号0或更多次('*')。 'u'是unicode的支持。 “我”对大小写不敏感。 '$ 2'是第二个'()'中的表达式 - 全部都是在先生之后。或毫秒。在这种情况下。 – mnv

+0

btw如何使用preg_replace用于路径/目录?例如,消除“../”?如:../images/upload – Underdog

1

你可以用爆炸函数来做它,试试看下面的代码。 $name= "place your lname"

<?php 
$name = "Mr. Smith"; 
$split = explode(" ", $name); 
echo $split[1]; 
?> 
1

为了表明有更多的方法对皮肤一只猫......

$name = "Mr. Smith"; 
$user = strstr($name, 'Mr. ', true); // As of PHP 5.3.0 
echo $user; // prints Smith