1

PHP: PHPを使用して文字列の先頭にある空白を削除し たいtrim()のですが、既定の設定でtrim()は空白文字が処理されません。空白は 7 スペースです。trim()または別の機能を使用して7つのスペースを削除する方法はありますか?

「通常の」文字 (通常の文字を何と呼べばよいかわからない場合のように引用符) に遭遇するまですべてをトリミングする関数が機能します。

4

5 に答える 5

1

メソッドを使用しltrim()ます。

http://www.php.net/manual/en/function.ltrim.php

于 2011-08-25T15:45:42.953 に答える
1

php 関数の trim() は、その仕様に従って、文字列の先頭と末尾からすべての空白文字を削除します。空白には、スペース、タブ、改行、ゼロ バイトが含まれます。私はあなたがそれを間違って使用しているに違いないと思いますか?一部のコードは、問題の解決に役立ちます。

于 2011-08-25T15:47:27.417 に答える
1

あらゆる種類の邪悪な空白 (ASCII バリアントだけではありません) を取り除くには、以下を使用できますpreg_replace

$str = preg_replace('/^\pZ+/u', '', $str);

それがうまくいかない場合は、最初に実際のキャラクターを調べる必要があります。bin2hex()または選択した hexeditor を使用して、実際に文字列に含まれているものを調べます。

于 2011-08-25T15:57:28.900 に答える
0

デフォルトでは、trim() は次の空白文字を処理します。

  • " " (ASCII 32 (0x20))、通常のスペース。
  • "\t" (ASCII 9 (0x09))、タブ。
  • "\n" (ASCII 10 (0x0A))、改行 (改行)。
  • "\r" (ASCII 13 (0x0D))、キャリッジ リターン。
  • "\0" (ASCII 0 (0x00))、NUL バイト。
  • "\x0B" (ASCII 11 (0x0B))、垂直タブ。

これは、空白がこれらのいずれでもないことを意味します。空白の種類がわかれば、trim() の引数として指定できます。

于 2011-08-25T15:47:19.740 に答える
0

必要なのはこれだけです。

function remWhite($str) {
    $value = preg_replace('/\s+/', '',$str);
    return $value;
}
于 2011-08-25T15:48:02.033 に答える