Как удалить запятую в конце строки?
Эта строка храниться в редисе.
Я логи пишу так, а потом демоном шлю в бд пачку. Но что бы запрос отработал необходимо удалить запятую из конца строки.
Если не сложно можно пример кодом?
Заранее спасибо.
Нужен аналог пхп функции substr
- Вопрос задан более трёх лет назад
- 1006 просмотров
Комментировать
Решения вопроса 3
Для начала я бы порекомендовал пользоваться официальной документацией, она кстати даже локально поднимается.
Packages/strings/func TrimRight, ссылка до TrimRight, пакета strings — TrimRight
Английские слова которые пишите на русском, хотя бы берите в двойные кавычки, если лень писать на eng, так повышается читаемость вашего вопроса и понимание.
Предполагается что «(‘ ‘ , ‘ ‘), (‘ ‘ , ‘ ‘),» — действительно строка.
package main import ( "fmt" "strings" ) func main()
Удаление знаков в строке
Как убрать запятые? Если я ввожу в текст «money» без запятой, программа считает, что это другое слово.
b = <> def return_amount(phrase): a = phrase.lower().split(" ") for word in a: b[word] = a.count(word) return_amount("Money, money, money, it’s always sunny, in the richmen’s world") print(b)
Отслеживать
149k 12 12 золотых знаков 59 59 серебряных знаков 132 132 бронзовых знака
задан 31 окт 2018 в 4:14
Chyngyz Akmatov Chyngyz Akmatov
85 1 1 серебряный знак 7 7 бронзовых знаков
Типичный пример проблемы XY. Вы спрашиваете как убрать запятые, хотя настоящая задача заключается в том как подсчитать количество слов в строке.
31 окт 2018 в 12:09
3 ответа 3
Сортировка: Сброс на вариант по умолчанию
Вариант с удалением запятой, безусловно, будет работать для приведенного Вами примера текста, но совершенно не подойдет для текста, состояшего из нескольких предложений, да еще и со сложной пунктуацией в виде точек, двоеточий, точек с запятой, тире и т.д.. Посему предложу свой вариант. Если хотите, оберните его в функцию. Но, ИМХО, его можно использовать и так, поскольку код однострочный:
from re import findall from collections import Counter text = "Money, money, money, it’s always sunny, in the richmen’s world." print(Counter(findall('\S*\w', text.lower()))) # Counter()
Коротко о ключах использованных в регулярном выражении:
\S — любой не пробельный символ
\w — любая буква, любая цифра или знак _ (нижнее подчеркивание)
* — означает, что указанный перед ним шаблон, должен встретиться 0 или более раз подряд
click fraud protection
В сегодняшней статье мы обсудим несколько способов удаления запятых из строки Python. Python — удобный язык программирования, который предоставляет встроенные функции для выполнения различных операций по удалению запятых из строки. Regex () и replace () — одни из таких методов. В этом уроке мы расскажем обо всех возможных способах устранения запятых.
Пример 1
В нашем первом программном коде Python мы используем метод replace (), чтобы удалить все запятые (,) из строки Python. Команда replace () возвращает копию строки, в которой существование подстроки заменяется другой подстрокой. Используя функцию replace (), мы меняем запятые в строке Python на нулевые элементы. Мы дополнительно исследуем функциональность метода replace () с помощью Spyder Compiler.
С помощью Spyder Compiler мы создаем новый файл, чтобы объяснить концепцию метода replace (). Итак, сначала мы создаем строку, содержащую запятые. Затем мы можем использовать функцию replace (), чтобы удалить запятые из «h, ard, c, ode p, rogr, ammer » нить. Функция печати применяется для отображения строки без запятых.
first_string = «h, ard, c, ode, p, rogr, ammer»
string_cp = первая_строка. заменять ( ‘,’ , «» )
Распечатать ( string_cp )
Чтобы просмотреть функциональные возможности функции replace (), сохраните и выполните файл программы, и результат будет показан на экране консоли.
Пример 2
Давайте обсудим наш второй программный код, здесь мы используем метод re или regex (), чтобы удалить все запятые (,) из строки Python. Python предоставляет встроенный метод, известный как «re», который можно использовать для работы с систематическими выражениями. Термин «re» пакета является регулярным выражением. Пакет «re» содержит функцию re.sub () для удаления запятых из строки Python.
Функция re.sub () используется для замены подстроки. Кроме того, он заменит любое совпадение другим параметром, в данном случае пустой строкой, удалив все запятые из строки. Сначала мы импортируем пакет «re», а затем создаем строку, содержащую запятые. Затем мы можем использовать функцию re.sub () в операторе печати, чтобы удалить запятые из строки «h, ard c, ode p, rogr, ammer».
Импортировать повторно
first_string = s «h, ard c, ode, p, rogr, ammer»
Распечатать ( повторно . суб ( «,» , «» , first_string ) )
Опять же, запустите исходный файл всухую, чтобы увидеть, как функция re.sub () удаляет запятые из строки Python.
Пример 3
Давайте обсудим наш третий программный код, здесь мы используем метод replace (), но на этот раз мы удалим первую запятую, чтобы сформировать строку Python. Python предоставляет встроенные функции и пакеты для удаления запятых и знаков препинания из строки Python. Мы используем тот же программный файл, создаем строку языка программирования, а затем печатаем нашу исходную строку. После этого мы вызываем метод replace () и назначаем его переменной с именем «altered_string». Функция принимает «1» в качестве аргумента для удаления первой запятой из строки Python.
first_string = «Python, Java, C ++»
Распечатать ( «Ваша первая строка:» )
Распечатать ( first_string )
измененная_строка = первая_строка. заменять ( «,» , «» , 1 )
Распечатать ( «Измененная строка:» )
Распечатать ( измененная_строка )
Еще раз сохраните и запустите файл кода, чтобы проверить вывод на экране консоли.
Пример 4
Давайте обсудим наш последний программный код, здесь мы снова используем метод regex (), чтобы удалить все запятые (,) из строки Python. Но в этом методе мы получаем ввод из пользовательской строки. Сначала мы импортируем пакет «re», а затем создаем строку, которая принимает ввод от пользователя. Затем мы можем использовать функцию re.sub (), которая принимает my_string в качестве параметра. Эта функция заменяет все запятые пустыми строками. Отфильтрованная строка сохраняется в измененной переменной. Затем мы можем использовать оператор печати для удаления запятых из «кода Python».
Импортировать повторно
my_string = Вход ( ‘Пользователь вводит строку:’ )
измененная_строка = повторно . суб ( ‘,’ , » , my_string )
Распечатать ( ‘Моя новая строка: <>‘ . формат ( измененная_строка ) )
Еще раз сохраните и запустите файл кода, чтобы проверить вывод на экране консоли.
Заключение
В этом руководстве мы удаляем запятые двумя способами. Метод замены уже размещен в строковой библиотеке Python. Оба подхода очень просты и легко кодируются. При желании эти иллюстрации можно изменить. Данные также могут быть изменены в обоих примерах.
Висящие запятые
Висящие запятые (или «последние запятые») могут быть полезны при добавлении новых элементов, параметров или свойств в код JavaScript. Если вы хотите добавить новое свойство, вы просто добавляете новую строчку без изменения предыдущей, если в ней уже использована висящая запятая. Это делает различия в контроле версий чище и изменение кода может быть менее хлопотным.
JavaScript с самого начала допускает использовать висящих запятых в литералах массива, а затем добавлял их в литералы объекта (ECMAScript 5) и, совсем недавно (ECMAScript 2017), к параметрам функций.
JSON, однако, не допускает висящих запятых.
Висящие запятые в литералах
Массивы
JavaScript игнорирует висящие запятые в массивах:
var arr = [1, 2, 3,]; arr; // [1, 2, 3] arr.length; // 3
Если использовано больше одной висящей запятой, будут созданы «дырки». Массив с «дырками» называется разреженным (плотный массив не имеет «дырок»). При итерации массива при помощи, например, Array.prototype.forEach() или Array.prototype.map() , «дырки» будут пропущены.
var arr = [1, 2, 3, , ,]; arr.length; // 5
Объекты
Начиная с ECMAScript 5, висящие запятые в объектах также допустимы:
var object = foo: "bar", baz: "qwerty", age: 42, >;
Висящие запятые в функциях
ECMAScript 2017 допускает висящие запятые в списке параметров функции.
Определение параметров
Следующие определения параметров функций допустимы и равнозначны друг другу. Висящие запятые не влияют на свойство length функции или их объект arguments .
function f(p) > function f(p,) > (p) => >; (p,) => >;
Висящая запятая также работает с определением методов для классов или объектов:
class C one(a,) >, two(a, b,) >, > var obj = one(a,) >, two(a, b,) >, >;
Вызов функции
Следующие вызовов функций допустимы и равнозначны друг другу.
f(p); f(p,); Math.max(10, 20); Math.max(10, 20,);
Недопустимые висящие запятые
Определение параметров функции или вызов функции, содержащих только запятую будет генерировать SyntaxError . Кроме того, при использовании остаточных параметров не допускается использовать висящие запятые:
function f(,) > // SyntaxError: missing formal parameter (,) => >; // SyntaxError: expected expression, got ',' f(,) // SyntaxError: expected expression, got ',' function f(. p,) > // SyntaxError: parameter after rest parameter (. p,) => > // SyntaxError: expected closing parenthesis, got ','
Висящие запятые в деструктурировании
Висящие запятые так же можно использовать слева при использовании деструктурирующего присваивания:
// массив деструктурируется с висящей запятой [a, b,] = [1, 2]; // объект деструктурируется с висящей запятой var o = p: 42, q: true, >; var p, q > = o;
Ещё раз, при использовании оставшихся параметров будет сгенерирована SyntaxError :
var [a, . b,] = [1, 2, 3]; // SyntaxError: rest element may not have a trailing comma
Висящие запятые в JSON
Висящие запятые в объекте допустимы только в ECMAScript 5. Так как JSON основан на синтаксисе JavaScript старше, чем ES5, висящие запятые не допускаются в JSON.
Обе строки генерируют SyntaxError :
JSON.parse("[1, 2, 3, 4, ]"); JSON.parse(''); // SyntaxError JSON.parse: unexpected character // at line 1 column 14 of the JSON data
Опустите висящие запятые, чтобы правильно проанализировать JSON:
JSON.parse("[1, 2, 3, 4 ]"); JSON.parse('');
Спецификации
Specification |
---|
ECMAScript Language Specification # prod-Elision |
ECMAScript Language Specification # prod-ObjectLiteral |
ECMAScript Language Specification # prod-ArrayLiteral |
ECMAScript Language Specification # prod-Arguments |
ECMAScript Language Specification # prod-FormalParameters |
ECMAScript Language Specification # prod-CoverParenthesizedExpressionAndArrowParameterList |
ECMAScript Language Specification # prod-NamedImports |
ECMAScript Language Specification # prod-NamedExports |
ECMAScript Language Specification # prod-QuantifierPrefix |
ECMAScript Language Specification # prod-annexB-InvalidBracedQuantifier |
Совместимость с браузерами
BCD tables only load in the browser
Смотрите также
- Initial ECMAScript proposal: trailing function commas by Jeff Morrison
Found a content problem with this page?
- Edit the page on GitHub.
- Report the content issue.
- View the source on GitHub.
This page was last modified on 7 авг. 2023 г. by MDN contributors.
Your blueprint for a better internet.
MDN
Support
- Product help
- Report an issue
Our communities
Developers
- Web Technologies
- Learn Web Development
- MDN Plus
- Hacks Blog
- Website Privacy Notice
- Cookies
- Legal
- Community Participation Guidelines
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998– 2023 by individual mozilla.org contributors. Content available under a Creative Commons license.