Remove all newlines from inside a string

后端 未结 7 1865
自闭症患者
自闭症患者 2020-11-28 09:02

I\'m trying to remove all newline characters from a string. I\'ve read up on how to do it, but it seems that I for some reason am unable to do so. Here is step by step what

相关标签:
7条回答
  • 2020-11-28 09:30

    Answering late since I recently had the same question when reading text from file; tried several options such as:

    with open('verdict.txt') as f: 
    

    First option below produces a list called alist, with '\n' stripped, then joins back into full text (optional if you wish to have only one text):

    alist = f.read().splitlines()
    jalist = " ".join(alist)
    

    Second option below is much easier and simple produces string of text called atext replacing '\n' with space;

    atext = f.read().replace('\n',' ')
    

    It works; I have done it. This is clean, easier, and efficient.

    0 讨论(0)
  • 2020-11-28 09:34

    strip() returns the string with leading and trailing whitespaces(by default) removed.

    So it would turn " Hello World " to "Hello World", but it won't remove the \n character as it is present in between the string.

    Try replace().

    str = "Hello \n World"
    str2 = str.replace('\n', '')
    print str2
    
    0 讨论(0)
  • 2020-11-28 09:38

    If the file includes a line break in the middle of the text neither strip() nor rstrip() will not solve the problem,

    strip family are used to trim from the began and the end of the string

    replace() is the way to solve your problem

    >>> my_name = "Landon\nWO"
    >>> print my_name
       Landon
       WO
    
    >>> my_name = my_name.replace('\n','')
    >>> print my_name
    LandonWO
    
    0 讨论(0)
  • 2020-11-28 09:39

    strip only removes characters from the beginning and end of a string. You want to use replace:

    str2 = str.replace("\n", "")
    
    0 讨论(0)
  • 2020-11-28 09:52

    strip() returns the string after removing leading and trailing whitespace. see doc

    In your case, you may want to try replace():

    string2 = string1.replace('\n', '')
    
    0 讨论(0)
  • 2020-11-28 09:55

    or you can try this:

    string1 = 'Hello \n World'
    tmp = string1.split()
    string2 = ' '.join(tmp)
    
    0 讨论(0)
提交回复
热议问题