Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Функционал:
- // 1) Удаляет предложения в которых есть $DeleteAll
- // 2) Удаляет предложения которые начинаются на слово из массива $DontUse
- // 3) Удаляет вводные слова из массива $UseAndReplace и делает первую букву слова идущего
- <?php
- error_reporting(E_ALL | E_STRICT); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE);
- //echo "<pre>"; var_dump($_POST); echo "</pre>";
- $DeleteAll = array('said\s[A-Z][a-z]');
- $DontUse = array('It', 'This', 'For example', 'These', 'Eventually', 'In turn', 'In these', 'That', 'That’s', 'That\'s', 'He', 'She',
- '[A-Za-z]\sof\sthat');
- $UseAndReplace = array('Besides', 'Furthermore', 'Also'); // , 'Hence', 'Thus'
- if(!empty($_POST['text'])){
- $text = trim($_POST['text']);
- //$text = strtolower($text);
- $text = preg_replace("/\n/ism", " ", $text);
- $text = preg_replace("/[\s]{2,}/ism", " ", $text);
- $dva = ".Ъ";
- $a = '/';
- //$text = preg_replace("/\.\s[a-z]/ism", "$1{$dva}$2", $text);
- //$text = preg_replace("/\.\s[a-z]/ism", "$0{$a}$1{$a}$2", $text);
- $text = preg_replace("/\.\s[a-z]/ism", "{$dva}$0", $text);
- $array = explode('Ъ.', $text);
- $count = count($array);
- // Очистим от пробелов на концах что бы не было проблем
- for ($i = 0; $i < count($array); $i++) {
- $array[$i] = trim($array[$i]);
- }
- //echo "<pre>"; var_dump($array); echo "</pre>";
- //echo $text."<br>";
- // Цикл перебора предложений
- for ($i = 0; $i < $count; $i++) {
- //echo "<pre>"; var_dump($array); echo "</pre>";
- // Удаление предложения целиком при наличии запрещённых фраз
- for ($k = 0; $k < count($DeleteAll); $k++) {
- if(isset($array[$i])){
- if(preg_match("/{$DeleteAll[$k]}/sm", $array[$i])){
- unset($array[$i]);
- break 1;
- }
- }
- }
- // Цикл поиска запрещённых для начала слов
- for ($k = 0; $k < count($DontUse); $k++) {
- if(isset($array[$i])){
- if(preg_match("/^{$DontUse[$k]}[\s,]{1,}/", $array[$i])){
- unset($array[$i]);
- break 1;
- }
- }
- }
- // Цикл поиска слов в начале, которые надо заменить
- for ($k = 0; $k < count($UseAndReplace); $k++) {
- if(isset($array[$i])){
- if(preg_match("/^{$UseAndReplace[$k]}[\s,]{1,}/", $array[$i])){
- $array[$i] = preg_replace("/^{$UseAndReplace[$k]}[\s,]{0,}/", "", $array[$i]);
- $array[$i] = ucfirst($array[$i]);
- }
- }
- }
- }
- //echo "<pre>"; var_dump($array); echo "</pre>";
- for ($i = 0; $i < $count; $i++) {
- if(isset($array[$i])){
- echo $array[$i]."<br><br>";
- }
- }
- }
- ?>
- <form action="" method="POST">
- <textarea name="text" cols="50" rows="10" class="form-control tools_form"></textarea>
- <br>
- <br>
- <button type="submit" name="add" class="btn btn-success">Запустить скрипт</button>
- </form>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement