Извлечение символов из строки с помощью приложения Google - PullRequest
3 голосов
/ 18 ноября 2011

Я написал небольшую программу на Python в своем приложении Google.Я использую его для извлечения определенных символов из строки, подобной этой "+ CMGL: 14," REC READ "," + 918000459019 ",," 11/11/04,18: 27: 53 + 22 "C" IЯ использую функцию разделения для этого, но это не разделяет строку. Любые подсказки почему?это дает мне что-то вроде [u '+ CMGL: 14, "REC READ", "+ 918000459019" ,, "11/11 / 04,18: 27: 53 + 22" \ n C'].

def prog (self,strgs):
    self.response.out.write(strgs)
    temp1= strgs
    self.response.out.write(temp1)
    message_split=temp1.split('\n')
    #self.response.out.write(message_split)
    temp=message_split
    self.response.out.write(temp)
    message_split_second=strgs.split(',')
    m_list=message_split[1:]
    self.response.out.write(message_split_second)
    collect_strings=''
    for j in m_list:
        collect_strings=collect_strings+j

    message_txt=collect_strings

    message_date=message_split_second[0]
    message_date=message_date.replace('"',"")
    dates=message_date

    message_time=message_split_second[0]
    message_time=message_time.split('/n')
    message_time=message_time[0]
    message_time=message_time.replace('"',"")
    temp=message_time.split('+')
    message_time=temp[0]
    times=message_time

    cell_number=message_split_second[0]
    cell_number=cell_number.replace('"',"")
    cellnum=cell_number
    return message_txt,dates,times,cellnum

1 Ответ

0 голосов
/ 18 ноября 2011

Расколы в первой части вашей функции должны работать. Вот эксперимент, который я только что сделал в Python 2.6:

>>> s = '+CMGL: 14,"REC READ","+918000459019",,"11/11/04,18:27:53+22"\n C '
>>> s.split('\n')
['+CMGL: 14,"REC READ","+918000459019",,"11/11/04,18:27:53+22"', ' C ']
>>> s.split(',')
['+CMGL: 14', '"REC READ"', '"+918000459019"', '', '"11/11/04', '18:27:53+22"\n C ']

Если ваши self.response.out.write вызовы не выполняют одно и то же, попробуйте сократить функцию до очень короткого значения, которое отображает странное поведение. И убедитесь, что вы точно знаете, что передается в качестве аргумента strgs.

Я не вижу ничего плохого в остальном, за исключением того, что в какой-то момент вы пытаетесь разделить на /n, когда вы, вероятно, намеревались использовать \n.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...