2016-03-27 22 views
1

büyük Kelimeler arasında çok nokta için ayarlama, bu senaryonun amacı o Maç ve Değiştir gereken bazı KelimelerRegex/küçük harf ve ben Regex ile bazı sorunlar var

Örnek bir Otomatik Corrrection yapmaktır şunlardır:

Word.Word 

Kime: Word. Word için:.. Kelime

aşağıdaki komut

function filter_string($string) { 
    $string = preg_replace("/([a-z])([A-Z])/", "$1. $2", $string); 
    $string = preg_replace("/([a-z]).([A-Z])/", "$1. $2", $string); 
    $string = str_replace("...", "&hellip", $string); 
    $string = str_replace("Games. Com", "GamesCom", $string); 
    $string = str_replace("Pv. P", "PvP", $string); 
    $string = str_replace("Pv. E", "PvE", $string); 
    $string = str_replace("Blizz. Con", "BlizzCon", $string); 
    $string = str_replace(". PvP", " PvP", $string); 
    $string = str_replace(". PvE", " PvE", $string); 
    return $string; 

ile bunu Ama nedense o da

Legendary Pictures zeigt uns das offizielle Poster zum Warcraft Film. 

eşleşen edilir Ve

Legendary. Pictures zeigt uns das offizielle. Poster zum. Warcraft. Film. 

için değiştirin ben alamadım Tüm noktaların nereden geldiğini ve neden bununla eşleştiğini, umarım birisi bana neyin yanlış olduğunu gösterir. o. Bu bir

$string = preg_replace("/([a-z]).([A-Z])/", "$1. $2", $string); 

:

cevap

2

ikinci regex yerine whitout nokta uzay deneyin

$string = preg_replace("/\.(\w)/", ". $1", $string); 

Muhtemelen (onun bir simge nokta kaçmaya unuttum herhangi bir karakter).

+0

Oh teşekkür ederim bu sebep olabilir = O. Kaçmaya çalıştım, noktalar gitti, ama şimdi wordWord'u "kelime" kelimesine değiştirmeyecek, "kelime" kelimesini yustu, ama bunu çözmem için bana büyük bir ipucu verdin. Çok teşekkür ederim – Deex

+0

size açığız! –

0

$string = preg_replace("/([a-z])([A-Z])/", "$1.$2", $string); 

$string = preg_replace("/([a-z]).([A-Z])/", "$1.$2", $string); 
+0

Merhaba, bunu denedim ama bu hiçbir şeyi değiştirmedi. Ben hata ile parçası olduğunu düşünüyorum '$ string = preg_replace ("/ ([az]). ([AZ]) /", "$ 1. $ 2", $ dize); 'Normalde o olmalıdır" sözcüğü.Word "ama bunun yerine diğer şeylerle eşleşmesi Hmm – Deex

+0

Deneyin $ string = preg_replace ("/([az] /) ./ ([AZ] /) "," $ 1. $ 2 ", $ string); Emin değilim, ama işe yarayabilir .. – Milor123

İlgili konular