Herhangi bir kelime olmayan herhangi bir alfasayısal karakter veya boşluk içeriyorsa, tüm kelimeyi değiştirmek için Reg exp

2 Cevap php

ör

string = "! Bu Lly uzun uzun, uzun cümle yeniden @" dır;

olur

string = "Bu uzun bir cümledir";

Temelde böylece tüm alfanümerik olmayan kelimeler veya kaldırılır tutturdu boşluk tutmak

Herhangi bir fikir?

2 Cevap

Bunu dene:

preg_replace("/(^|\\s)\\S*?[^ a-zA-Z0-9]\\S*?(\\s|$)/", '$1', $string)

Böyle bir şey oldukça sezgisel olduğunu düşünüyorum:

<?php

$text = "This is a #@^!%$ re@lly long long,long! sentence";
print preg_replace("/\\w*[^\\w\\s]\\w*\\s*/", "", $text);

?>

Çıkış (as seen on ideone.com):

This is a long sentence

Bu \w* Bunun herhangi bir dizinin ardından, [^\w\s] (bir sözcük karakteri ne de bir boşluk, ne) tarafından takip edilir herhangi bir dizisini eşleştirilerek çalışır \w*\s*. Bu uyan bir şey silinebilir, bu nedenle "" ile değiştirilir.

See also