Làm thế nào để bạn loại bỏ các nguyên âm liên tiếp trong python?

Giả sử ta có một xâu s, xâu này bao gồm "R" và "L", ta phải loại bỏ số ký tự ít nhất sao cho không có chữ "R" liền và chữ "L" liền nhau

Vì vậy, nếu đầu vào là "LLLRRR" thì đầu ra sẽ là "LRLR"

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -

  • đã xem. = ký tự đầu tiên của s
  • trả lời. = ký tự đầu tiên của s
  • đối với mỗi ký tự i từ chỉ mục 1 đến cuối s, hãy làm
    • nếu tôi không giống như đã thấy, thì
  • trả lại ans

Chúng ta hãy xem triển khai sau đây để hiểu rõ hơn -

Thí dụ

Bản thử trực tiếp

class Solution:
   def solve(self, s):
      seen = s[0]
      ans = s[0]
      for i in s[1:]:
         if i != seen:
            ans += i
            seen = i
      return ans
ob = Solution()
print(ob.solve("LLLRLRR"))

Đầu vào

"LLLRLRR"

đầu ra

LRLR

Làm thế nào để bạn loại bỏ các nguyên âm liên tiếp trong python?


Làm thế nào để bạn loại bỏ các nguyên âm liên tiếp trong python?

Bài viết này được tạo ra để đề cập đến một số chương trình trong Python, loại bỏ các nguyên âm khỏi một chuỗi do người dùng nhập vào. Dưới đây là danh sách các phương pháp được sử dụng

  • Xóa nguyên âm khỏi chuỗi bằng vòng lặp for
  • Sử dụng cắt chuỗi
  • Sử dụng phương thức thay thế()

Lưu ý - a, e, i, o, u, A, E, I, O, U đều là nguyên âm

Xóa nguyên âm khỏi chuỗi bằng for Loop

Để xóa tất cả các nguyên âm khỏi một chuỗi trong Python, bạn phải yêu cầu người dùng nhập một chuỗi, sau đó xóa tất cả các nguyên âm khỏi chuỗi đó như trong chương trình dưới đây. Câu hỏi đặt ra là viết chương trình Python để xóa các nguyên âm khỏi chuỗi. Đây là câu trả lời của nó

print("Enter the String: ")
text = input()

vowels = ['a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U']
newtext = ""
textlen = len(text)

for i in range(textlen):
    if text[i] not in vowels:
        newtext = newtext + text[i]

print("\nString after removing Vowels: ")
text = newtext
print(text)

Đây là đầu ra ban đầu được tạo bởi chương trình Python này

remove vowels from string python

Bây giờ cung cấp đầu vào nói Codecracker. com và nhấn phím ENTER để xóa tất cả các nguyên âm khỏi chuỗi này và in chuỗi mới không có nguyên âm như trong ảnh chụp nhanh bên dưới

delete vowels from string python

Chương trình trên hoạt động theo cách

  • Tôi đã tạo một danh sách tất cả 10 nguyên âm. 5 chữ thường và 5 nguyên âm chữ hoa
  • Sau đó khởi tạo các ký tự, từng ký tự một thành một chuỗi mới, chẳng hạn như văn bản mới, chỉ khi ký tự (sẽ khởi tạo) không có trong (hoặc bằng) bất kỳ nguyên âm nào trong số 10 nguyên âm có sẵn trong danh sách

Lưu ý - Phương thức len() trả về độ dài của chuỗi được truyền làm đối số của nó

Lưu ý - Phương thức range() trả về một chuỗi các giá trị. Theo mặc định, bắt đầu bằng 0 và tăng thêm 1 mỗi lần. Tiếp tục cho đến khi giá trị được cung cấp làm đối số của nó

Chạy khô chương trình trên với trình giải mã đầu vào của người dùng. com đi như

  • Các giá trị ban đầu, text = "codescracker. com" (do người dùng nhập), newtext = "", và textlen = 16 (vì độ dài của chuỗi đã cho là 16)
  • Bây giờ quá trình thực thi vòng lặp for bắt đầu, ban đầu i=0 và vì 0 nhỏ hơn textlen hoặc 16, do đó điều kiện được đánh giá là đúng và luồng chương trình đi vào bên trong vòng lặp
  • Điều kiện (nếu) văn bản[i] không có nguyên âm hoặc văn bản[0] không có nguyên âm hoặc "c" không có nguyên âm được đánh giá là đúng, vì "c" là ký tự không có trong danh sách có tên nguyên âm. Do đó, luồng chương trình đi vào bên trong phần thân if này và văn bản mới + văn bản [i] hoặc "" + văn bản [0] hoặc "" + "c" hoặc "c" được khởi tạo thành văn bản mới
  • Bây giờ giá trị của i được tăng lên, vì vậy i=1, vì 1 lại nhỏ hơn 16, do đó điều kiện một lần nữa đánh giá là đúng, do đó luồng chương trình lại đi vào bên trong vòng lặp
  • Lần này, văn bản[i] không có nguyên âm hoặc văn bản[1] không có nguyên âm hoặc "o" không có nguyên âm được đánh giá là sai, vì "o" là ký tự có sẵn trong danh sách có tên nguyên âm. Do đó, luồng chương trình không đi vào bên trong phần thân của if
  • Bây giờ i=2 và lần này, điều kiện nếu, đó là text[i] không ở dạng nguyên âm hoặc text[2] không ở dạng nguyên âm hoặc "d" không ở dạng nguyên âm được đánh giá là đúng, do đó newtext + text[i] hoặc
  • Quá trình này tiếp tục cho đến khi giá trị của i trở thành 16
  • Theo cách này, biến newtext giữ giá trị chuỗi do người dùng nhập nhưng không có bất kỳ nguyên âm nào
  • Vì vậy, đã khởi tạo giá trị của nó thành văn bản và giá trị của văn bản được in dưới dạng chuỗi không có nguyên âm

Phiên bản sửa đổi của chương trình trước đó

Đây là phiên bản sửa đổi của chương trình trước đó. Chương trình này sử dụng vòng lặp for theo cách mà mỗi và mọi ký tự của chuỗi được sao chép từng ký tự một vào c và sử dụng giá trị của c, tôi đã kiểm tra và thực hiện công việc loại bỏ các nguyên âm giống như chương trình trước. Sự khác biệt duy nhất là c được coi là text[i] ở đây

print("Enter String: ", end="")
text = input()

vowels = ['a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U']
newtext = ""

for c in text:
    if c not in vowels:
        newtext = newtext + c

print("\nWith Vowels =", text)
text = newtext
print("\nWithout Vowels =", text)

Đây là lần chạy mẫu của nó với đầu vào chuỗi Chào mừng bạn đến với Codecracker. com

python remove vowels from string

Lưu ý - Kết thúc = được sử dụng để bỏ qua việc chèn dòng mới bằng print()

Xóa nguyên âm khỏi chuỗi bằng cách cắt chuỗi

Chương trình này sử dụng tính năng cắt chuỗi để thực hiện công việc loại bỏ các nguyên âm khỏi chuỗi. Chương trình này loại bỏ các nguyên âm khỏi chuỗi mà không sử dụng bất kỳ biến (thứ hai) nào khác

print("Enter String: ", end="")
text = input()

vowels = ['a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U']
i = 0
for c in text:
    if c in vowels:
        text = text[:i] + text[i+1:]
        i = i-1
    i = i+1

print("\nWithout Vowels =", text)

Đây là lần chạy mẫu của nó với đầu vào chuỗi giống như lần chạy mẫu trước

remove vowels from string using for loop python

Trong chương trình trên, câu lệnh sau

text = text[:i] + text[i+1:]

nói rằng, ngoại trừ ký tự tại chỉ mục thứ i, tất cả các ký tự trước và sau chỉ mục thứ i, được thêm vào và khởi tạo thành văn bản dưới dạng giá trị mới của nó

Lưu ý - Trong khi cắt chuỗi bằng cách sử dụng các cặp chỉ mục bên trong dấu ngoặc vuông, nghĩa là [. ], số chỉ mục trước dấu hai chấm được bao gồm và số chỉ mục sau dấu hai chấm bị loại trừ

Lưu ý - Để trống trước. (dấu hai chấm) trong [. ] đề cập đến 0 và trống sau. (dấu hai chấm) trong [. ] đề cập đến giá trị độ dài của chuỗi

Xóa nguyên âm khỏi chuỗi bằng thay thế ()

Chương trình này sử dụng phương thức replace() để thay thế nguyên âm không có gì (""). Vì vậy, lần lượt tất cả các nguyên âm bị xóa bằng "", trống. Hãy cùng xem chương trình

Làm cách nào để xóa nguyên âm khỏi chuỗi trong Python bằng vòng lặp for?

Chương trình xóa nguyên âm .
Cách 1 – Lặp đơn giản trên chuỗi sử dụng vòng lặp for
Cách 2 – Lặp lại từng ký tự của chuỗi
Cách 3 – Sử dụng phương thức thay thế
Cách 4 – Thực hiện lâu hơn nhưng rõ ràng hơn
Phương pháp 5 – Phương thức nối và lặp một dòng
Cách 6 – Sử dụng regex
Phương pháp 7 – Sử dụng cắt lát

nguyên âm liên tiếp là gì?

Các từ có năm nguyên âm liên tiếp bao gồm cooeeing và queueing . Euouae -- thuật ngữ âm nhạc thời trung cổ chỉ ra các nguyên âm của các âm tiết của "seculorum Amen", kết thúc "Gloria Patri. "

Làm cách nào để xóa nguyên âm khỏi chuỗi trong Java mà không cần sử dụng hàm?

Thuật toán .
Lấy đầu vào Chuỗi từ người dùng và lưu trữ trong một biến có tên là s
Sau đó, lấy biến Chuỗi s1 với Chuỗi trống
Sau cuộc gọi đó replaceAll() trên đối tượng s
Viết regex trên phương thức replaceAll() như thế này s1 = s. replaceAll(“[aeiou]”, “”);
In biến s