Вырезание строки в python

Обратите внимание на следующее:

https://msdn.microsoft.com/en-GB/library/bb383977.aspx

Вы можете определить метод расширения для класса RegEx, который позволит вам указать Action<> в качестве аргумента.

-2
задан Andrej Kesely 13 July 2018 в 21:50
поделиться

2 ответа

Вот метод, который использует простой код Python, избегая осложнений регулярных выражений. Это предназначено, когда вы знаете, что 'PM' находится в строке, и если в строке есть текст, после этого он будет перемещен во второй элемент списка вместе с 'PM. Этот код также предполагает, что вы заботитесь только о первом элементе в списке - любые последующие элементы будут удалены.

s = ['33PM']

string0 = s[0]
loc = string0.find('PM')
s = [string0[:loc], string0[loc:]]

Если вы теперь распечатываете s, результат будет

['33', 'PM']
0
ответ дан Rory Daulton 17 August 2018 в 12:07
поделиться

Вы можете использовать re.findall для извлечения непрерывного диапазона чисел и символов. \d+ будет извлекать все числа, а \w+ будет извлекать все диапазоны символов

>>> import re 
>>> s = re.findall(r'\d+|\w+', s[0])
>>> s
['33', 'PM']
3
ответ дан Sunitha 17 August 2018 в 12:07
поделиться
  • 1
    Вы можете мне это объяснить? (Спасибо за ваше объяснение!) – Achmet Tachsin 13 July 2018 в 21:50
  • 2
    – Achmet Tachsin 13 July 2018 в 21:55
  • 3
    На каком основании хотелось бы сократить «123»? Как мы узнаем, должны ли они быть ['1','23'] или ['12','3'] – Sunitha 13 July 2018 в 21:57
  • 4
    Сохраните первый символ s [0] и вырежьте else на s [1], может быть? – Achmet Tachsin 13 July 2018 в 21:59
  • 5
    Это поможет? s=['123']; s=[s[0][0], s[0][1:]] – Sunitha 13 July 2018 в 22:05
Другие вопросы по тегам:

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