2016-07-02 2 views
1

У меня есть строкаЗачистка строки в Python между кавычками

text:u'tsod' 

«Основной текст: U» является частью строки.

Я хочу разделить только символы между одинарными кавычками. Я знаю, как полосать на основе местоположения, но я не знаю, как полосать на основе значения в моем случае «», я просто хочу извлечь «tsod»

Также, как будет понимать питон, который является стартовым «'» и который является окончанием «», чтобы выполнить полосу, поскольку оба являются одинаковыми символами.

+1

'" text: u'tsod '". split ("' ") [1]' – falsetru

+0

@falsetru WHATT ??? Это так просто? OMG python потрясающий !! работает как шарм. Вы можете объяснить, как это работает? я имею в виду, что такое 1 в конце – Anarach

+0

@falsetru Да, спасибо за подсказку, я думал, что есть какая-то функция python для этого, но похоже, что здравый смысл - секретная функция: -p Я жалок! – Anarach

ответ

2

Если у вас есть несколько пар кавычек, то это решение может помочь:

import re 
strng = "text:u'tsod';text2:u'tsod2';text3:u'tsod3'" 
qlist = re.findall("\'(.*?)\'",strng) 

Тогда qlist будет: ['tsod', 'tsod2', 'tsod3']

+1

WOAH, это именно то, что мне нужно .. Спасибо – Anarach

+0

Добро пожаловать. Модуль регулярных выражений чрезвычайно полезен для строковых манипуляций. – akhilmd

1

Вы можете разделить на перевернутой запятой "'":

>>> s = "text:u'tsod'".split("'") 
>>> s 
['text:u', 'tsod', ''] 
>>> s[1] 
'tsod' 
+0

Ницца, я вижу, что вы разделили текст на три части, а затем вы выбираете вторую секцию, ROFL, я немой, спасибо вам, сэр! – Anarach

+0

@ Anarach Любой может легко упустить эти вещи. Кредиты falsetru, которые прокомментировали, прежде чем я отправил ответ. –

+0

Спасибо, ребята, я недавно забрал python, и я люблю его благодаря таким людям, как вы и falsetru. – Anarach