Удалите сначала четыре строки из вершины в содержании, сохраненном в переменной

Проблема заключается в использовании точки в качестве левой части оператора трубопровода, документация %>% гласит:

Использование метки в качестве lhs Когда точка используется как lhs, результат будет функциональной последовательностью, то есть функцией, которая применяет всю цепочку правых частей по очереди к своему вводу. Смотрите примеры.

Они даже предоставляют пример:

# Building unary functions with %>%
trig_fest <- . %>% tan %>% cos %>% sin

Таким образом, в основном вы предоставляете функцию в качестве ввода для paste

12
задан Sam 10 August 2014 в 11:43
поделиться

4 ответа

Ммм. Я уверен, что кто-то собирается придумать что-нибудь изящное / короче / приятнее, но как насчет:

$str = implode("\n", array_slice(explode("\n", $str), 4));

Если это слишком неприглядно, вы всегда можете абстрагироваться от этого:

function str_chop_lines($str, $lines = 4) {
    return implode("\n", array_slice(explode("\n", $str), $lines));
}

$str = str_chop_lines($str);

РЕДАКТИРОВАТЬ : Еще немного подумать Я бы не рекомендовал использовать функцию str_chop_lines , если вы не планируете делать это во многих частях своего приложения. Я думаю, что оригинальная однострочная строка достаточно ясна, и любой, кто наткнется на str_chop_lines , может не понять, что по умолчанию установлено значение 4, без перехода к определению функции.

22
ответ дан 2 December 2019 в 05:15
поделиться

Strpos очень помогает: вот пример:

// $myString = "blah blah \n \n \n etc \n \n blah blah";

$len = strpos($myString, "\n\n"); 
$string = substr($myString, $len, strlen($myString) - $len);

$ string затем содержит строку после поиска этих двух новых строк подряд.

2
ответ дан 2 December 2019 в 05:15
поделиться

$ content = preg_replace ("/ ^ (. * \ N) {4} /", "", $ содержание);

4
ответ дан 2 December 2019 в 05:15
поделиться

Разбить строку на массив, используя split (rex) , где rex сопоставляет два последовательных перевода строки, а затем объединяет весь массив, за исключением первого элемента (который является заголовком).

1
ответ дан 2 December 2019 в 05:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: