Javascript trim — Эквивалент php функции trim, ltrim, rtrim на JavaScript


Javascript trim — Эквивалент php функции trim, ltrim, rtrim на JavaScript

(PHP 3, PHP 4, PHP 5)

rtrim — Удаляет пробелы из конца строки

Описание string rtrim ( string str [, string charlist] )

Замечание: Второй аргумент был добавлен в PHP 4.1.0

Эта функция возвращает строку str с удаленными из конца строки пробелами. Если второй параметр не передан, rtrim() удаляет следующие символы:

Можно также задать список символов для удаления с помощью аргумента charlist . С помощью .. можно задать диапазон символов.

Пример 1. Пример использования rtrim()

= «\t\tЛишь несколько слов :) . » ;
$trimmed = rtrim ( $text );
// $trimmed = «\t\tЛишь несколько слов :) . »
$trimmed = rtrim ( $text , » \t.» );
// $trimmed = «\t\tЛишь несколько слов :)»
$clean = ltrim ( $binary , «\x00..\x1F» );
// удалить управляющие символы ASCII из конца строки $binary
// (от 0 до 31 включительно)

См. также описание функций trim() и ltrim() .

rtrim

(PHP 4, PHP 5, PHP 7)

rtrim — Удаляет пробелы (или другие символы) из конца строки

Описание

Эта функция возвращает строку str с удаленными из конца строки пробельными (или другими) символами.

Список параметров

С помощью параметра character_mask можно также указать удаляемые символы. Просто перечислите все символы, которые вы хотите удалить. Можно указать конструкцию .. для обозначения диапазона символов.

Возвращаемые значения

Возвращает модифицированную строку.

Примеры


Пример #1 Пример использования rtrim()

= «\t\tThese are a few words :) . » ;
$binary = «\x09Example string\x0A» ;
$hello = «Hello World» ;
var_dump ( $text , $binary , $hello );

$trimmed = rtrim ( $text );
var_dump ( $trimmed );

$trimmed = rtrim ( $text , » \t.» );
var_dump ( $trimmed );

$trimmed = rtrim ( $hello , «Hdle» );
var_dump ( $trimmed );

// удаляем управляющие ASCII-символы с конца $binary
// (от 0 до 31 включительно)
$clean = rtrim ( $binary , «\x00..\x1F» );
var_dump ( $clean );

Результат выполнения данного примера:

Смотрите также

  • trim() — Удаляет пробелы (или другие символы) из начала и конца строки
  • ltrim() — Удаляет пробелы (или другие символы) из начала строки

User Contributed Notes 14 notes

I have an obsessive love for php’s array functions given how extremely easy they’ve made complex string handling for me in various situations. so, have another string-rtrim() variant:

function strrtrim ( $message , $strip ) <
// break message apart by strip string
$lines = explode ( $strip , $message );
$last = » ;
// pop off empty strings at the end
do <
$last = array_pop ( $lines );
> while (empty( $last ) && ( count ( $lines )));
// re-assemble what remains
return implode ( $strip , array_merge ( $lines , array( $last )));
>

?>

Astonishingly, something I didn’t expect, but: It completely compares to harmor’s rstrtrim below, execution time wise. o_o Whee!

True, the Perl chomp() will only trim newline characters. There is, however, the Perl chop() function which is pretty much identical to the PHP rtrim()

Here’s a quick way to recursively trim every element of an array, useful after the file() function :

# Reads /etc/passwd file an trims newlines on each entry
$aFileContent = file ( «/etc/passwd» );
foreach ( $aFileContent as $sKey => $sValue ) <
$aFileContent [ $sKey ] = rtrim ( $sValue );
>

On the recurring subject of string-stripping instead of character-stripping rtrim() implementations. the simplest (with a caveat) is probably the basename() function. It has a second parameter that functions as a right-trim using whole strings:

echo basename ( ‘MooFoo’ , ‘Foo’ );

Since it also strips anything that looks like a directory, it’s not quite identical with hacking a string off the end:


echo basename ( ‘Zoo/MooFoo’ , ‘Foo’ );

But sometimes it gets the job done.

I needed a way to trim all white space and then a few chosen strings from the end of a string. So I wrote this class to reuse when stuff needs to be trimmed.

function cleaner ( $cuts , $pinfo ) <
$ucut = «0» ;
$lcut = «0» ;
while ( $cuts [ $ucut ]) <
$lcut ++;
$ucut ++;
>
$lcut = $lcut — 1 ;
$ucut = «0» ;
$rcut = «0» ;
$wiy = «start» ;

if (! $cuts [ $ucut ]) <
$so = «restart» ;
> else <
$pinfo = rtrim ( $pinfo );
$bpinfol = strlen ( $pinfo );
$tcut = $cuts [ $ucut ];
$pinfo = rtrim ( $pinfo , » $tcut » );
$pinfol = strlen ( $pinfo );

if ( $bpinfol == $pinfol ) <
$rcut ++;
if ( $rcut == $lcut ) <
unset( $wiy );
>
$ucut ++;
> else <
$so = «restart» ;
>
>
>

$this -> cleaner = $pinfo ;
>

$pinfo = «Well. I’m really bored.

$pinfo = new cleaner ( $cuts , $pinfo );
$pinfo = $pinfo -> cleaner ;

?>

That class will take any string that you put in the $cust array and remove it from the end of the $pinfo string. It’s useful for cleaning up comments, articles, or mail that users post to your site, making it so there’s no extra blank space or blank lines.

I’m sure there’s a better way to strip strings from the end of strings.

/**
* Strip a string from the end of a string
*
* @param string $str the input string
* @param string $remove OPTIONAL string to remove
*
* @return string the modified string
*/
function rstrtrim ( $str , $remove = null )
<
$str = (string) $str ;
$remove = (string) $remove ;

if(empty( $remove ))
<
return rtrim ( $str );
>

return rtrim ( $str );

> //End of function rstrtrim($str, $remove=null)

echo rstrtrim ( ‘Hello World. ‘ , ‘!’ ) . ‘
‘ ; //»Hello World»
echo rstrtrim ( ‘Hello World. ‘ , ‘!!’ ) . ‘
‘ ; //»Hello World!»
echo rstrtrim ( ‘Hello World. ‘ , ‘. ‘ ) . ‘
‘ ; //»Hello World»
echo rstrtrim ( ‘Hello World. ‘ , ‘. ‘ ). ‘
‘ ; //»Hello World. »
?>

function read_more($in,$len=160) <
if(strlen($in)>$len) <
return preg_replace(‘/[\s\.,][^\s\.,]*$/u’, », substr($in, 0, $len)).’. ‘;
>else <
return $in;
>
>

echo read_mode(«Lorem ipsum dolor sit amet, consectetur adipisicing elit. Proin nibh augue, suscipit a, scelerisque sed, lacinia in, mi. Cras vel lorem. Etiam pellentesque aliquet tellus. Phasellus pharetra nulla ac diam. Quisque semper justo at risus. Donec venenatis, turpis vel hendrerit interdum, dui ligula ultricies purus, sed posuere libero dui id orci.»);
/* Output:
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Proin nibh augue, suscipit a, scelerisque sed, lacinia in, mi. Cras vel lorem. Etiam pellentesque. */

Trim limit would be really helpfull. I made a little helper function to do a rtrim with a limited number of replaces:


function rtrim_limit ( $str , $delim , $count = 0 )
<
if ( $count == 0 ) return rtrim ( $str , $delim );

rtrim — Удаляет пробелы (или другие символы) из конца строки

(PHP 4, PHP 5, PHP 7)

rtrim — Удаляет пробелы (или другие символы) из конца строки

Описание

Эта функция возвращает строку str с удаленными из конца строки пробелами.

Список параметров

С помощью параметра character_mask можно также указать удаляемые символы. Просто перечислите все символы, которые вы хотите удалить. Можно указать конструкцию .. для обозначения диапазона символов.

Возвращаемые значения

Возвращает модифицированную строку.

Примеры

Пример #1 Пример использования rtrim()

= «\t\tThese are a few words :) . » ;
$binary = «\x09Example string\x0A» ;
$hello = «Hello World» ;
var_dump ( $text , $binary , $hello );

$trimmed = rtrim ( $text );
var_dump ( $trimmed );

$trimmed = rtrim ( $text , » \t.» );
var_dump ( $trimmed );

$trimmed = rtrim ( $hello , «Hdle» );
var_dump ( $trimmed );

// удаляем управляющие ASCII-символы с конца $binary
// (от 0 до 31 включительно)
$clean = rtrim ( $binary , «\x00..\x1F» );
var_dump ( $clean );

Результат выполнения данного примера:

Смотрите также

  • trim() — Удаляет пробелы (или другие символы) из начала и конца строки
  • ltrim() — Удаляет пробелы (или другие символы) из начала строки


.trim () в JavaScript не работает в IE

Я пытался применить .trim() к строке в одной из моих программ JavaScript. Он отлично работает под Mozilla, но при попытке в IE8 отображается ошибка. Кто-нибудь знает, что здесь происходит? Есть в любом случае я могу заставить его работать в IE?

отображать сообщение об ошибке:

14 ответов

добавьте следующий код для добавления функций обрезки в строку.

похоже, что эта функция не реализована в IE. Если вы используете jQuery, вы можете использовать $.trim() вместо (http://api.jquery.com/jQuery.trim/).

кто-то использует $(«#mycomment»).val().trim(); но это не будет работать в IE.

к сожалению, нет кросс-браузерной поддержки JavaScript для trim ().

Если вы не используете jQuery (который имеет .trim() метод) вы можете использовать следующие методы для добавления поддержки обрезки строк:

Это довольно недавнее дополнение к javascript, и его не поддерживает IE.

у меня была аналогичная проблема при попытке обрезать значение из ввода, а затем спросить, равно ли оно ничему:

однако это бросило гаечный ключ в работах для IE6-8. Достаточно досадно, что я попытался это так состряпать:—4

однако, используя метод trim jQuery, отлично работает для меня во всех браузерах..

Я написал некоторый код для реализации функциональности trim.

LTRIM (левый):

функция rtrim (обрезать справа):

отделка (обрезать с обеих сторон):

или

регулярное выражение также доступно, которое мы можем использовать.


мы можем получить официальный код из интернета! См. это:

запуск следующего кода перед любым другим кодом создаст trim (), если он изначально недоступен.

дополнительные: Я только что нашел проект js для поддержки EcmaScript 5: https://github.com/es-shims/es5-shim читая исходный код, мы можем получить больше знаний о TRIM.

Я не думаю, что есть уроженец trim() метод в стандарте JavaScript. Возможно, Mozilla поставляет один, но если вы хотите его в IE, вам нужно будет написать его самостоятельно. Есть несколько версий на на этой странице.

У меня была такая же проблема в IE9 Однако, когда я объявил поддерживаемую версию html со следующим тегом в первой строке перед

проблема была решена.

только что узнал, что IE перестает поддерживать trim() , вероятно, после недавнего обновления windows. Если вы используете dojo, вы можете использовать dojo.string.trim() , он работает кросс-платформенный.

эта проблема может быть вызвана IE с помощью режима совместимости на сайтах интрасети. Есть два способа решить эту проблему, вы можете либо обновить IE, чтобы не использовать режим совместимости на локальном компьютере (в IE11: Инструменты-> Параметры просмотра совместимости -> снимите флажок Отображать сайты интрасети в режиме совместимости)

еще лучше вы можете изменить мета-теги в Вашей странице. Добавить в:

что это значит? Он говорит IE использовать последний режим совместимости. Больше информация доступна в MSDN: указание устаревших режимов документов

Это из-за ошибки опечатки getElementBy ID. Измените его на getElementById

Функции LTrim, RTrim и Trim LTrim, RTrim, and Trim functions

Возвращает переменную типа Variant (String), содержащую копию заданной строки без начальных пробелов (LTrim), без конечных пробелов (RTrim) или без начальных и конечных пробелов (Trim). Returns a Variant (String) containing a copy of a specified string without leading spaces (LTrim), trailing spaces (RTrim), or both leading and trailing spaces (Trim).

Синтаксис Syntax

LTRIM (строка) LTrim(string)
RTRIM (строка) RTrim(string)
Trim (строка) Trim(string)

Обязательный строковый аргумент — любое допустимое строковое выражение. The required string argument is any valid string expression. Если строка содержит значение Null, возвращается Null. If string contains Null, Null is returned.

Пример Example

В этом примере функция LTRIM используется для удаления начальных пробелов, а функция RTRIM используется для удаления конечных пробелов из строковой переменной. This example uses the LTrim function to strip leading spaces, and the RTrim function to strip trailing spaces from a string variable. Также используется функция Trim для удаления обоих типов пробелов. It uses the Trim function to strip both types of spaces.

См. также See also


Поддержка и обратная связь Support and feedback

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Have questions or feedback about Office VBA or this documentation? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь. Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.

TRIM, LTRIM и RTRIM — усечение строк в PL/SQL на примерах

Действие функций PL/SQL TRIM, LTRIM и RTRIM противоположно действию LPAD и RPAD : эти функции удаляют символы от начала и от конца строки. Пример:

Как видите, функция RTRIM удалила все точки. Второй аргумент этой функции определяет удаляемые символы. В приведенном примере вызов LTRIM выглядит немного абсурдно, но он демонстрирует возможность задания целого набора удаляемых символов. Мы запрашиваем удаление всех букв и пробелов от начала строки b и получаем желаемое.

По умолчанию функции удаляют пробелы в начале или в конце строки. Вызов RTRIM (a) эквивалентен RTRIM (a,’ ‘). То же самое относится к LTRIM (a) и LTRIM (a,’ ‘).

Еще одна функция удаления символов из строки — TRIM — была включена в Oracle8i для более полного соответствия стандарту ISO SQL. Как видно из следующего примера, функция TRIM несколько отличается от LTRIM и RTRIM :

Одна функция позволяет усекать строку с любой из двух сторон или же с обеих сторон сразу. Тем не менее вы можете задать только один удаляемый символ. Например, следующая запись недопустима:

Вместо нее для решения нашей конкретной задачи приходится использовать комбинацию RTRIM и LTRIM :

JavaScript trim

Вступление

В JavaScript нет функции trim , которая удаляет символы пробелов, табуляции и переносы по краям строки.

Решение простое: написать самому функцию используя регулярные выражения.

Функция string trim(string str [, string charlist]) — принимает 2 параметра, строку str (обязательный) и charlist

Пример

На примере показана работа функции, с параметром charlist и без него.

Результат

Пробелы по бокам, которые удаляются
Табы по бокам, которые удаляются
Переносы строк
торые буквы нужно удалять из ст

jquery.trim по сравнению с string.trim

Есть ли разница между Jquery подрезки и родным JavaScript один?


Есть ли другое поведение, безопасность, производительность?

JavaScript .trim() был определен в ES 5.1, и не работает для IE $.trim()

JQuery в $.trim() метод делает:

где rtrim в основном это RegExp

и whitespace представлена в этой группе:

Эта функция интерпретирует значение Строка в виде последовательности UTF-16 закодированы кодовых точек, как описано в разделе 6.1.4.

Предпринимаются следующие шаги: Пусть О RequireObjectCoercible (это значение). Пусть S будет ToString (O). ReturnIfAbrupt (S). Пусть Т строковое значение, которое является копией S с обеими передними и задними пробелами удаляются. Определение белого пространства является объединением и пробельной КонцомСтроки. При определении того, точка кода Unicode, в Unicode общей категории «Zs», код единицы последовательности интерпретируются как UTF-16 закодированных точечных последовательностей кодовых, как указано в разделе 6.1.4. Возврат T. ПРИМЕЧАНИЕ Функция коррекции преднамеренно родовая; она не требует, чтобы это его значение будет объектом типа String. Таким образом, она может быть передана другим типам объектов для использования в качестве метода.

Поэтому не говоря уже о реализации JS — х .trim() для разработчиков браузеров, точка совершенно ясно:
Удалите представление новых строк или пробелов с начала и конца строки.

RTrim в javascript

У меня проблема с обрезкой jQuery. У меня есть строка в jQuery:

Как обрезать заднюю тильду?

.trim() метод jQuery относится к пробелу.

Описание . Удалите пробелы с начала и конца строки.

Это приведет к удалению всех завершающих

также станет one

Просто используйте javascript replace, чтобы изменить последнюю строку в ничто:

длинный путь вокруг него.. и отгоняет этого нужно просто последний символ.. не тильда конкретно..

IMO это лучший способ сделать правую/левую обрезку и, следовательно, иметь полную функциональность для обрезки (поскольку javascript поддерживает string.trim изначально)

P.S. Если вы указываете параметр для rtrim или ltrim , убедитесь, что вы используете строку, совместимую с regex. Например, если вы хотите сделать rtrim на [ , вы должны использовать: somestring.rtrim(‘\\[‘)

Это приведет к удалению последнего символа в строке. Это то, что вы хотели?

Илон Маск рекомендует:  Что такое код mapvirtualkey
Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL