как бы убрать эти строчки?

12
R
На сайте с 23.11.2007
Offline
218
908

Добрый вечер.

Есть:

Текстовый файл (txt) 87к урлов.

Нужно:

Убрать все домены с зонами:

ru

org.ua (что бы просто орг домены не задело).

Буду рад объяснению на пальцах :)

Заранее благодарен.

СДЛ: Строительный журнал | 100 страниц | уникальный дизайн (/ru/forum/577692)
malls
На сайте с 08.08.2005
Offline
255
#1

Как то так:

$file = file("file.txt")

$fp = fopen("temp.txt","a+")
foreach ($file as $string) {
if(!preg_match('~\.ru|\.org.ua~i',$stirng)) {
echo $string."<br>";
fwrite($fp,$string."\n");
}
}
fclose($fp);
Anarchist
На сайте с 23.07.2008
Offline
185
#2

Если совсем на пальцах, то можно открыть этот файл через notepad++ и сделать замену этих зон на пустоту.

R
На сайте с 23.11.2007
Offline
218
#3
Anarchist:
Если совсем на пальцах, то можно открыть этот файл через notepad++ и сделать замену этих зон на пустоту.

и останутся просто домены без зон :)

Rishpik добавил 07.03.2009 в 18:11

malls...... спс :) осталось понять что за это за строчки :)

Anarchist
На сайте с 23.07.2008
Offline
185
#4
Rishpik:
и останутся просто домены без зон

ааа блин... пардоньте. Натупил. Почему-то показалось, что зоны убрать надо... Все, пойду спать :)

malls
На сайте с 08.08.2005
Offline
255
#5
Rishpik:
и останутся просто домены без зон :)

Rishpik добавил 07.03.2009 в 18:11
malls...... спс :) осталось понять что за это за строчки :)

:) Это ААбще то PHP...

если с ним сложности - то тогда даже не знаю чем помочь...

Программ которые бы выборчно удаляли строки по наличию "маски" я не знаю... Хотя и нафиг они нужны если как видно из примера это парой строк кода делается.

R
На сайте с 23.11.2007
Offline
218
#6
malls:
:) Это ААбще то PHP...
если с ним сложности - то тогда даже не знаю чем помочь...
Программ которые бы выборчно удаляли строки по наличию "маски" я не знаю... Хотя и нафиг они нужны если как видно из примера это парой строк кода делается.

да я в курсе... что пхп :)

то есть делаем пхп страничку и пихаем этот код... далее запускаем.....

$file = file("file.txt") исходный файл?

$fp = fopen("temp.txt","a+") получаемый?

foreach ($file as $string) {

if(!preg_match('~\.ru|\.org.ua~i',$stirng)) {

echo $string."<br>"; (зоны..... а если ещё пару добавить? как? так?: ('~\.ru|\.org.ua|\.org.ua1|\.org.ua2~i',$stirng)

fwrite($fp,$string."\n");

}

}

fclose($fp);

malls
На сайте с 08.08.2005
Offline
255
#7
Rishpik:
да я в курсе... что пхп :)

то есть делаем пхп страничку и пихаем этот код... далее запускаем.....

Да!

Делай так для простоты (громоздко, но все одно одноразовая тема):

$file = file("file.txt") //исходный файл?

$fp = fopen("temp.txt","a+") //получаемый?

$zones = array('~\.ru~i','~\.org\.ua~i','~\.com~i');

foreach ($file as $string) {
foreach($zones as $z) {
if(!preg_match($z,$stirng)) { // те домены где нет перечисленных строк
echo $string."<br>"; // это в браузер выводит
fwrite($fp,$string."\n"); // это в файл пишет
}
}
}
fclose($fp);
C
На сайте с 20.09.2007
Offline
114
#8

Есть exel, разделителем будет ., а в exel сортировка сначала по третьему столбцу (уберете org.ua), потом по второму (уберете .ru), потом сохраните в файл с разделителем по табу, и уже в блокноте все табы уберете заменой на ничего.

p.s. Только ваш текстовый файл разбейте на два, ибо 87 000 не войдет.

ИМХО, самые лучшие VDS: https://cp.inferno.name/aff.php?aff=4048
xant
На сайте с 17.12.2008
Offline
65
#9
malls:
Программ которые бы выборчно удаляли строки по наличию "маски" я не знаю...

Не стыдно? man grep

Эксклюзивные сайты и веб-2.0 приложения под ключ. Дорого.
malls
На сайте с 08.08.2005
Offline
255
#10
xant:
Не стыдно? man grep

ну я винду имел в виду! :)

а под линем что греп что пыха, что перл - одна яйца - вид только с разной стороны.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий