2014-10-27 48 views
0

例如,在一種情況下,句子可以有2個單詞,而在其他情況下,該句子可以有5個單詞。我認爲我可以使用爆炸來獲得每種情況下的每個單詞(如here),問題是每個句子中單詞的數量都不相同。那最初的問題後,我需要類似的句子,但使用&,而不是空白的,例如,用可變數量的單詞拆分句子(用空格分隔),然後用&作爲分隔符構建句子

input: this is a sentence 
output: this & is & a & sentence 

我在PHP是新的,所以請大家多多包涵,如果這個問題很簡單。

在此先感謝您的任何提示!

+2

'$結果=破滅( '&',str_word_count($原始,2));' – 2014-10-27 18:58:38

+0

@MarkBaker感謝對於好的行命令。關於它的一個問題,我知道在awk中,我可以使用'awk'{if(x <2)print $ 0}'file'來使用簡單的if調用。是否有可能在你的命令中做類似的事情?問題是如果只有一個單詞,我想離開句子,並且如果它有兩個或更多單詞,則應用您的命令行,感謝任何進一步的建議。 – Gery 2014-10-27 20:22:23

+1

不測試字數作爲一個乾淨的單線的一部分;但如果你只在句子中有一個單詞,那麼你只會在最後結果中只有一個單詞而沒有任何&符號 – 2014-10-27 20:26:25

回答

1

使用explode -

$sentence = "this is a sentence"; 
$words = explode(' ', $sentence); 
print_r($words); 

然後implode -

$updated = implode(" & ", $words); 
echo $updated; 

這種方法並不關心有多少話是在句子中,所以它可以與任何句子中使用。

1

使用explode按空格拆分單詞。然後使用implode將它們與&之間的單詞重新組合。

$string = 'this is a sentence'; 
$words = explode(' ', $string); 
$newstring = implode(' & ', $words); 
var_dump($newstring); 

或者你可以使用str_replace與&替換所有空格。

$string = 'this is a sentence'; 
$newstring = str_replace(' ', ' & ', $string); 
相關問題