Xóa dòng mới khỏi chuỗi C++

Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách xóa ký tự xuống dòng (\n) khỏi một tệp văn bản đã cho bằng python

Giả sử chúng tôi đã lấy một tệp văn bản có tên TextFile. txt bao gồm một số văn bản ngẫu nhiên. Chúng tôi sẽ xóa ký tự xuống dòng (\n) khỏi một tệp văn bản đã cho

Tệp văn bản. txt

Good Morning TutorialsPoint
This is TutorialsPoint sample File
Consisting of Specific
source codes in Python,Seaborn,Scala
Summary and Explanation
Welcome TutorialsPoint
Learn with a joy

Thuật toán (Các bước)

Sau đây là Thuật toán/các bước cần tuân thủ để thực hiện tác vụ mong muốn -

  • Tạo một biến để lưu đường dẫn của tệp văn bản

  • Sử dụng hàm open()(mở một tệp và kết quả là trả về một đối tượng tệp) để mở tệp văn bản ở chế độ chỉ đọc bằng cách chuyển tên tệp và chế độ làm đối số cho nó (Ở đây “r” biểu thị chỉ đọc

with open(inputFile, 'r') as filedata:
  • Sử dụng hàm readlines() (trả về một danh sách với mỗi dòng trong tệp được biểu thị dưới dạng một mục danh sách. Để giới hạn số dòng được trả về, hãy sử dụng đối số gợi ý. Không còn dòng nào được trả về nếu tổng số byte được trả về vượt quá số lượng đã chỉ định) để lấy danh sách các dòng của tệp văn bản đầu vào đã cho với một ký tự dòng mới (\n) ở cuối

file.readlines(hint)
  • Sử dụng hàm rstrip() (xóa mọi ký tự ở cuối i. e, các ký tự xuất hiện ở cuối chuỗi. Ký tự cuối mặc định cần xóa là khoảng trắng) và khả năng hiểu danh sách (ở đây chúng tôi đang lặp lại trong từng dòng của danh sách bằng cách sử dụng vòng lặp for), để xóa ký tự xuống dòng (\n) khỏi danh sách các dòng ở trên của tệp văn bản và in

list comprehension:
When you wish to build a new list based on the values of an existing list, list comprehension provides a shorter/concise syntax.
  • Đóng tệp đầu vào bằng hàm close() (dùng để đóng tệp đã mở)

Ví dụ

Chương trình sau kiểm tra từng dòng nếu từ đã cho được tìm thấy trong một dòng từ tệp văn bản và in dòng nếu tìm thấy từ đó –

# input text file inputFile = "ExampleTextFile.txt" # Opening the given file in read-only mode with open(inputFile, 'r') as filedata: # Reading the file lines using readlines() linesList= filedata.readlines() # Removing the new line character(\n) from the list of lines print([k.rstrip('\n') for k in linesList]) # Closing the input file filedata.close()

đầu ra

Khi thực thi, chương trình trên sẽ tạo đầu ra sau -

['Good Morning TutorialsPoint', 'This is TutorialsPoint sample File', 'Consisting of Specific', 'source codes in Python, Seaborn,Scala', 'Summary and Explanation', 'Welcome TutorialsPoint', 'Learn with a joy']

Chúng tôi đã cung cấp cho chương trình của mình một tệp văn bản chứa một số nội dung ngẫu nhiên và sau đó mở nó ở chế độ đọc. Hàm readlines() sau đó được sử dụng để truy xuất danh sách tất cả các dòng trong tệp. Sử dụng khả năng hiểu danh sách, chúng tôi đã xem qua từng dòng của tệp và xóa ký tự xuống dòng bằng phương thức rstrip(). Cuối cùng, chúng tôi đã đóng tệp bằng cách in các dòng được cập nhật mà không có ký tự dòng mới

Trong Python hoặc bất kỳ ngôn ngữ lập trình nào khác, Nhà phát triển phải xử lý một lượng lớn dữ liệu trong hầu hết thời gian và để xử lý dữ liệu đó, họ cần xử lý trước dữ liệu. Tạo hoặc xóa các dòng mới khỏi dữ liệu là một phần của quá trình xử lý. Để tạo một dòng mới trong python, chúng ta thường sử dụng ký tự “/n”. Tuy nhiên, nhiều hàm Python tự động tạo các dòng mới. Do đó, họ thậm chí không cần sử dụng “/n”

Đôi khi chúng tôi không cần bất kỳ dòng mới nào và nếu “/n” được sử dụng, chúng tôi phải xóa ký tự xuống dòng. Bài viết này sẽ thảo luận về các chức năng khác nhau để xóa một dòng mới khỏi một chuỗi trong Python

Phương pháp 1. Làm cách nào để xóa dòng mới khỏi chuỗi bằng hàm dải()?

Hàm “strip()” dùng để xóa dòng mới khỏi chuỗi trong python. Hàm này sẽ xóa cả dòng mới ở cuối và đầu của chuỗi. Dòng cuối là khoảng trắng bắt đầu sau ký tự cuối cùng của dòng và kéo dài cho đến khi bắt đầu dòng mới, trong khi dòng đầu là khoảng trắng xuất hiện trước khi bắt đầu dòng mới

Hãy hiểu nó hoạt động thông qua mã ví dụ sau

Mã số

# Strip Function Example to remove new line from string using strip
string_value = "\n     \n  \nWelcome and Good Morning. \nHow are you?. \nwhat are you doing?...\n   \n    \n"
# Now we print the original string
print(string_value)
# Using Strip function to Remove Both trailing and leading newlines from string
updated_string = string_value.strip()
# Print updated string
print(updated_string)

Trong đoạn mã trên

  • Chúng tôi đang khởi tạo chuỗi với ký tự xuống dòng “/n” trước khi bắt đầu chuỗi và ở cuối chuỗi
  • Trong bước thứ hai, chuỗi gốc được in
  • Cuối cùng, hàm strip() được sử dụng để xóa cả dòng mới ở cuối và ở đầu của chuỗi
Xóa dòng mới khỏi chuỗi C++

đầu ra

Xóa dòng mới khỏi chuỗi C++

Kết quả cho thấy hàm “string()” đã loại bỏ tất cả các khoảng trắng ở cuối và ở đầu

Ghi chú. Nếu chúng tôi chỉ muốn xóa một dòng ở cuối hoặc ở đầu, chúng tôi sử dụng chức năng này với một số sửa đổi như chức năng “rstrip()” và “lstrip()”

Phương pháp 2. Làm cách nào để xóa dòng mới khỏi chuỗi bằng hàm rstrp()?

Hàm “rstrip()” được sử dụng khi chúng ta chỉ muốn xóa dòng cuối của chuỗi. Chúng tôi sử dụng chức năng này khi chúng tôi muốn khoảng trắng giữa cuối dòng và đầu dòng mới mã ví dụ sau sử dụng hàm “rstrip()” để xóa dòng mới khỏi một chuỗi trong Python

Mã số

# Strip Function Example to remove trailing line from string using rstrip function
string_value = "\n     \n  \nWelcome and Good Morning. \nHow are you?. \nwhat are you doing?...\n   \n    \n"
# Now we print the original string
print(string_value)
# Remove trailing newlines from string using r.strip function
updated_string_trl = string_value.rstrip()
# Print updated string
print(updated_string_trl)

Trong đoạn mã trên

  • Giá trị chuỗi được khởi tạo trong tên biến “string_value”
  • Chúng tôi đã sử dụng hàm “rstrip()” để xóa các dòng ở cuối chuỗi đầu vào có tên “string_value”
  • Cuối cùng, chúng tôi in đầu ra của giá trị chuỗi được cập nhật
Xóa dòng mới khỏi chuỗi C++

đầu ra

Xóa dòng mới khỏi chuỗi C++

Trong đầu ra ở trên, chúng tôi đã xóa các dòng cuối của chuỗi bằng hàm rstrip()

Phương pháp 3. Làm cách nào để xóa dòng mới khỏi chuỗi bằng hàm lstrip()?

Để xóa các dòng đầu của chuỗi, chúng ta sử dụng hàm “lstrip()”. Chức năng này được sử dụng để loại bỏ một dòng mới trước khi bắt đầu chuỗi. Hãy hiểu nó thông qua mã ví dụ sau

Mã số

________số 8

Trong đoạn mã trên

  • Các giá trị chuỗi được khởi tạo trong biến có tên “string_value”
  • Chúng tôi đã sử dụng hàm “lstrip()” để xóa các dòng đầu của chuỗi đầu vào có tên “string_value”
  • Cuối cùng, chúng tôi đã in đầu ra của giá trị chuỗi được cập nhật mà không có dòng đầu
Xóa dòng mới khỏi chuỗi C++

đầu ra

Xóa dòng mới khỏi chuỗi C++

Từ đầu ra ở trên, nhận thấy rằng không có dòng đầu nào trong giá trị chuỗi được cập nhật

Phương pháp 4. Làm cách nào để xóa dòng mới khỏi chuỗi bằng hàm thay thế()?

Trong Python, một hàm tích hợp có tên là “replace()” được sử dụng để thực hiện các tác vụ khác nhau như thay thế chuỗi con, s, v.v. Hàm này có thể thay thế hoặc xóa dòng mới khỏi chuỗi. Mã ví dụ sau được thực hiện để xóa tất cả các giá trị dòng mới bằng hàm này

Mã số

# using replace function we are removing new line
string_value2 = "Hello and welcome to my tutorial. \n\n\nThis is the discussion about String Newline."
# printing the original value of string with new line
print(string_value2)

# Now using function to Remove newlines between text
new_string = string_value2.replace("\n", "")
# printing new value of string
print(new_string)

Trong đoạn mã trên

  • Chúng tôi đã sử dụng ký tự xuống dòng “/n” ở giữa các giá trị chuỗi
  • Hàm “replace()” có hai đối số. “giá trị cũ” và “giá trị mới”. Chúng tôi đã xác định “/n” là giá trị cũ và không xác định giá trị mới vì chúng tôi chỉ muốn xóa giá trị đó. Tuy nhiên, để thay thế giá trị cũ của chuỗi thì chúng ta cần xác định giá trị mới
  • Hàm print() dùng để in kết quả
Xóa dòng mới khỏi chuỗi C++

đầu ra

Xóa dòng mới khỏi chuỗi C++

Trong kết quả ở trên, chúng ta có thể thấy rằng chuỗi ban đầu có hai dòng khoảng trắng giữa chúng và tất cả các dòng mới của chuỗi ban đầu đều bị xóa

Phần kết luận

Trong Python, một vài hàm tích hợp sẵn như “strip()”, “rstrip()”, “lstrip()” và “replace()” được sử dụng để xóa dòng mới khỏi chuỗi. Chức năng “strip()” cùng với các chức năng được sửa đổi của nó i. e. , “rstrip()”  để theo dõi và “lstrip()” để dẫn đầu, được sử dụng chủ yếu. Hàm replace() cũng được sử dụng để thay thế hoặc xóa dòng mới khỏi chuỗi. Trong bài đăng này, tất cả các chức năng đã nêu ở trên được giải thích ngắn gọn để xóa dòng mới khỏi chuỗi con

Làm cách nào để xóa dòng mới khỏi chuỗi trong C?

Thay thế \n bằng \0 ở cuối chuỗi là một cách "xóa" dòng mới.

Làm cách nào để xóa ký tự cuối cùng khỏi chuỗi trong C?

Mọi chuỗi trong C đều kết thúc bằng '\0'. Vì vậy, bạn cần phải làm điều này. int size = strlen(my_str); . This way, you remove the last char.

Làm cách nào để đọc tệp không có dòng mới trong C?

Nếu bạn không muốn ký tự dòng mới, bạn có thể thay thế ký tự đó, nếu nó tồn tại, bằng ký tự kết thúc chuỗi. Có một ví dụ về cách xóa dòng mới trong Câu hỏi thường gặp. Nếu bạn không muốn ký tự dòng mới, bạn có thể thay thế ký tự đó, nếu nó tồn tại, bằng ký tự kết thúc chuỗi

Làm cách nào để kiểm tra dòng mới trong C?

Làm cách nào để kiểm tra xem một ký tự có phải là một dòng mới hay không? . comparing to '\n' should solve your problem; depending on what you consider to be a newline character, you might also want to check for '\r' (carriage return).