Удалить строки, содержащие символы

Рейтинг: 0Ответов: 1Опубликовано: 22.02.2015

Есть txt файлы разного объема.

Нужно удалить строки, содержащие значения ', %, $, @.

В файле слова, каждое слово с новой строки.

Необходимо именно удалить всю строку, если есть хоть одно значение.

Ответы

▲ 3Принят

Если построчно, то

preg_match('/[%$@]+/', 'hello %world');

Пример

UPDATE

Оптимизация:

$lines = [
    'keud orfd',
    'signs %26 loves'
];

$callback = function($line){
    return strpbrk($line, '%$@') === false;
};

var_dump(array_filter($lines, $callback));

Пример

P.S. Строковые функции быстрее, чем RegEx-ы.