3

すべての文字の間にスペースがあり、すべてのスペースが 3 つのスペースで構成されているテキストの文字列をクリーンアップする必要があります。次に例を示します。

E X C E P T I O N A L   C R E A T I V I T Y   A N D   A  
T A I L O R E D   D E S I G N   E D G E

テキストをきれいにする方法、つまり、すべてのトリプルスペースを単一のスペースに変換し、各文字間のスペースを削除するにはどうすればよいですか?

クライアント側/サーバー側のソリューションを歓迎します。

4

3 に答える 3

5
preg_replace('/(.) /', '\\1', $string);

正規表現エンジンは、置換の結果である部分文字列と一致しないため、トリプル スペースを特別なケースにする必要なく正しく処理します。

于 2013-03-06T19:12:25.387 に答える
2
str_replace(array('   ', ' ', '%'), array('%', '', ' '), $text);

% をテキストにない文字または文字列に置き換えるだけです。

于 2013-03-06T19:17:23.510 に答える
0
$input = <<<_EOI_
E X C E P T I O N A L   C R E A T I V I T Y   A N D   A  
T A I L O R E D   D E S I G N   E D G E
_EOI_;

$patterns = array('/(\w) /', '/ {2,}/');
$replaces = array('$1', ' ');

preg_replace($patterns, $replaces, $input);

// output: 
// EXCEPTIONAL CREATIVITY AND A
// TAILORED DESIGN EDGE
于 2013-03-06T19:25:51.180 に答える