2010-11-20 2 views
0

Я хочу удалить все из строки, кроме цифр, букв, _ (подчеркивание) и: (двоеточие)Простая проблема с регулярным выражением!

Это PREG, и я только встретил # \ W #, но он удаляет: (двоеточие) ,

Любая помощь приветствуется, спасибо!

+1

Больше похоже на "Я ничего не знаю, регулярное выражение". В этом случае вам лучше изучить его (по крайней мере, основы, которых достаточно для этого). – delnan

+0

Как и дельнан, вы должны просто искать регулярные выражения. – Thomas

+0

Привет, я попросил о помощи, чтобы мне не сказали, чтобы узнать это. – Synergy

ответ

0

[^\w:]+ - Удалите все, что не является ([^...]) букв, цифр, подчеркивания (\w) или двоеточие (:).

Пример кода:

$ptn = "/[^\w:]+/"; 
$str = "Hello~~~ World+++: 123"; 
echo preg_replace($ptn, "", $str); 

Выходы: HelloWorld:123

+0

Коби, спасибо за ваш ответ, но он, похоже, не работает. Я использую PHP, и это дало мне следующую ошибку: Предупреждение: preg_replace() [function.preg-replace]: Неизвестный модификатор '+' в D: \ Servers \ Web \ public_html \ index.php в строке 17 – Synergy

+0

@Synergy - Я не уверен, в чем проблема, возможно, вы можете опубликовать часть своего кода? Я обновил ответ с помощью образца. В любом случае, он должен работать точно так же без '+'. – Kobi

+0

Этот новый образец, который вы положили, работал, спасибо Коби! – Synergy

Смежные вопросы