Чем почистить строки?

1 234
Dos3
На сайте с 07.01.2011
Offline
363
#21

я тоже в POSIX не шарю, но на сколько понял из кода ), херню он делает ))

вобщем если не сделают, то позже запилю.

надо ведь убрать и такую лажу: баба села на пень итд, т.е нужна рекурсия

но всёравно идеально не будет, когда делал пирсилки сниппетов тоже об этом думал, можно ещё по базе удалять слова на которые не должно оканчиватся предложение, хз надо ли такое, у меня 3ка по русскому была ))

upd с "пенём" не правильно написал ), ну вобщем 2-3 слова подряд меньше 4х символов в конце

Force68
На сайте с 23.04.2010
Offline
250
#22
DenisVS:
А может, позапрягать подольше?

дак ведь 😂

завсё ведь не ухватишся,

zTDS - бесплатная TDS (https://t.me/z_tds)
DV
На сайте с 01.05.2010
Offline
644
#23

Dos3, а вы не предполагайте, пробуйте.

Небольшая поправка, мелочи

cat file.txt | awk '{ for (i=1;i<NF;i++) printf $i" "; if ((length ($NF))>7) printf $NF; if ((length ($NF)) < 11) print "."; print ""}' | sed 's/\ \././g' | sed 's/\,\././g' | grep .
VDS хостинг ( http://clck.ru/0u97l ) Нет нерешаемых задач ( https://searchengines.guru/ru/forum/806725 ) | Перенос сайтов на Drupal 7 с любых CMS. ( https://searchengines.guru/ru/forum/531842/page6#comment_10504844 )
iqmaker
На сайте с 17.04.2012
Offline
342
#24

Можно я тоже вставлю решение на последнее задание (сходу на трех строках правильно):


sed -s s@'\( .\{1,4\}\)*\.\s*$'@'.'@g file.txt
DV
На сайте с 01.05.2010
Offline
644
#25

iqmaker, ну, да, я перемудрил :)

iqmaker
На сайте с 17.04.2012
Offline
342
#26
DenisVS:
iqmaker, ну, да, я перемудрил :)

Есть чуток :)

Dos3
На сайте с 07.01.2011
Offline
363
#27

было


слово слово, слово слово.
слово слово слово слово на!
слово слово слово, слово на нах.
слово слово слово слово на нах пох!
слово слово слово слово, на нах пох.
слово слово на нах пох!
слово на нах, пох.
слово пох.

стало


слово слово, слово слово.
слово слово слово слово.
слово слово слово, слово.
слово слово слово слово.
слово слово слово слово.
слово слово.
слово.
слово.


<?php

$file = file('text.txt');
//$replace_base = file('replace_base.txt');

foreach($file as $val)
{
$val = preg_replace("# +#"," ",$val);

$val = trim($val);

if(strlen($val = yux($val))> 4)
{
file_put_contents("result.txt",$val."\r\n",FILE_APPEND);

//echo $val . "<br />";
}
}


function yux($str)
{
//global $replace_base;

$str = preg_replace("#[^a-zа-яё]+$#i","",$str);

$str = preg_replace("# .{1,3}$#","",$str);

if(preg_match("# .{1,3}[,]*$#",$str))
{
$str = yux($str);
}
else
{
$str = preg_replace("#[^a-zа-яё]+$#i","",$str);

$str = $str . ".";
}

return $str;
}
?>

то что я быдлокодер, это я знаю, не придератся )

файл для исключения по базе встроить ?

поправил

Force68
На сайте с 23.04.2010
Offline
250
#28

Dos3, ай спасиба, щас попробую запустить

Dos3
На сайте с 07.01.2011
Offline
363
#29

погоди, забыл запись в файл сделать

поправил

в реальном тексте полюбому косяки будут, надо подгонять, пиши в лс

Force68
На сайте с 23.04.2010
Offline
250
#30
Dos3:
...файл для исключения по базе встроить ?

да впринципе непомешал бы - с меня пузырь! ☝

1 234

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