Tôi đã cố gắng để có một tập tin được đọc, sau đó sẽ đưa các tài liệu đọc vào một chuỗi. Sau đó, chuỗi sẽ được chia theo dòng thành nhiều chuỗi:Golang: Các vấn đề thay thế dòng mới trong một chuỗi từ một tập tin văn bản
absPath, _ := filepath.Abs("../Go/input.txt")
data, err := ioutil.ReadFile(absPath)
if err != nil {
panic(err)
}
input := string(data)
Các INPUT.TXT được đọc như sau:
một
chim chút mạnh mẽ
với rất
trái tim lớn
đi
đến trường một ngày và
quên thực phẩm của mình tại
nhà
Tuy nhiên,
re = regexp.MustCompile("\\n")
input = re.ReplaceAllString(input, " ")
biến văn bản vào một mớ hỗn độn nham nhở của:
homeot thực phẩm của mình atand
Tôi không chắc chắn như thế nào thay thế dòng mới có thể mess lên rất nặng tới điểm mà văn bản sẽ đảo ngược bản thân
Điều đó sẽ không giải quyết được vấn đề này mặc dù, vì - như Jens nói - Windows newlines ('\ r \ n') đang gây ra hiệu ứng mô tả khi chỉ '\ n' được thay thế trong khi để lại' \ r' trong chuỗi. – madsen
@madsen bạn có nghĩ rằng nếu '\ r \ n' đang gây ra sự cố, có thể có nghĩa là xóa' \ r \ n'? Hoặc thay thế dòng 'string.Replace (đầu vào," \ n "," ", - 1)' thành 'chuỗi. Thay thế (đầu vào," \ r \ n "," ", - 1)' một nhiệm vụ không thể cho bạn? –
Không có lý do để tích cực. Điểm của bạn về không nhất thiết cần regex là tốt, nhưng câu trả lời của bạn không giúp OP giải quyết vấn đề thực tế của mình. – madsen