我正在尝试从字符串中删除空白和单引号。
$string = "'DZ;Algeria;The People's Democratic Republic of Algeria;Algerian' ";
echo trim($string,"'");
在上面的字符串中,我想删除两端的单引号,但trim
只删除左侧的单引号。右侧单引号在修剪后保留。
输出为:
DZ;阿尔及利亚阿尔及利亚人民民主共和国;阿尔及利亚
但我想要这个:
DZ;阿尔及利亚阿尔及利亚人民民主共和国;阿尔及利亚
在要修剪的字符列表中添加一个空格。
echo trim($string,"' ");
https://3v4l.org/CkbZP
您可以trim()
两次。首先,修剪字符串以去除前导空格和尾随空格;然后再次修剪以删除前导和尾随单引号(在删除前导/尾随空格之后(
$string = "'DZ;Algeria;The People's Democratic Republic of Algeria;Algerian' ";
echo trim(trim($string),"'");
演示:https://3v4l.org/0rsXN
character_mask
(可选(也可以使用character_mask参数指定剥离的字符。只需列出所有要删除的字符。具有您可以指定一系列字符。
默认情况下,字符掩码包含空白字符:
- "quot;(ASCII 32(0x20((,一个普通的空格
- "\t〃;(ASCII 9(0x09((,一个选项卡
- "\n〃;(ASCII 10(0x0A((,一个新行(换行(
- "\r〃;(ASCII 13(0x0D((,回车
- " ";(ASCII 0(0x00((,NUL字节
- "\x0B";(ASCII 11(0x0B((,一个垂直选项卡
如果您想修剪单引号及其前后的空格,您可以将单引号添加到该列表中:
$string = "'DZ;Algeria;The People's Democratic Republic of Algeria;Algerian' ";
echo trim($string,"' tnr x0B");
否则,空格字符被认为是不可修剪的,并且引号不会被删除。
如果需要保留空格,则需要将preg_replace
与正则表达式一起使用。