Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

ฟังก์ชันสำหรับการลบอักขระต้องห้ามใน C++


พูดคุยถึงวิธีการลบฟังก์ชันที่จะลบอักขระต้องห้าม เช่น [ ' :',' ? ', ' \ ', ' / ', ' <', '> ', ' | ’, ‘ * ’ ] จากสตริง เช่น

Input: str = “ Hello: Welco*me/ to Tu>torials point|. ”
Output: “ Hello Welcome to Tutorials point. ”
Explanation: Input String contains forbidden characters which got removed and new string has no forbidden characters.

Input: str = “ How/ are y*ou doi,ng? ”
Output: “ How are you doing ”

แนวทางในการหาแนวทางแก้ไข

วิธีการง่ายๆ ที่สามารถประยุกต์ใช้กับปัญหานี้ได้คือ

  • ข้ามสตริงจากด้านใดด้านหนึ่ง

  • ตรวจสอบอักขระแต่ละตัวว่าเป็นอักขระต้องห้ามหรือไม่

  • ลบอักขระหากเป็นอักขระต้องห้าม

  • เราสามารถแทรกค่า Null หรือสตริงใหม่เพื่อแทรกอักขระทั้งหมดยกเว้นอักขระต้องห้ามในการลบอักขระ

ตัวอย่าง

รหัส C++ สำหรับแนวทางข้างต้น

#include <stdio.h>
#include <bits/stdc++.h>
using namespace std;
// function to remove forbidden charcters.
void removeforbidden(char* str){
    int j = 0;
    int n =  strlen(str);
    // traversing through the string and searching for forbidden characters.
    for(int i = 0;i<n;i++){
        switch(str[i]){
            case '/':
            case '\\':
            case ':':
            case '?':
            case '"':
            case '<':
            case '>':
            case '|':
            case '*':
            // inserting null value in place of forbidden characters.
            str[j] = '\0';
            default:
            str[j++] = str[i];

        }
    }  
    // printing the string.
    for(int i = 0;i<n;i++)
        cout << str[i];
    return;
}
int main(){
    char str[] = "Hello: Welco*me/ to Tu>torial?s point|.";
    removeforbidden(str);
    return 0;
}

ผลลัพธ์

Hello, Welcome to Tutorials point.

คำอธิบายของโค้ดด้านบน

  • ตัวพิมพ์สวิตช์จะใช้ขณะเคลื่อนที่ผ่านสตริงที่แต่ละองค์ประกอบของสตริงถูกตรวจสอบด้วยอักขระตัวพิมพ์

  • หากอักขระเท่ากับอักขระตัวพิมพ์ อักขระนั้นจะถูกแทนที่ด้วยอักขระว่าง

บทสรุป

ในบทช่วยสอนนี้ เราได้พูดถึงการสร้างฟังก์ชันสำหรับการลบอักขระต้องห้าม เช่น [ ' :', ' ? ', ' \ ', ' / ', ' <', '> ', ' | ’, ‘ * ’ ] เราได้พูดคุยถึงแนวทางง่ายๆ ในการแก้ปัญหานี้โดยสำรวจผ่านสตริงและจับคู่อักขระกับอักขระต้องห้าม

เรายังพูดถึงโปรแกรม C++ สำหรับปัญหานี้ ซึ่งเราสามารถทำได้ด้วยภาษาโปรแกรม เช่น C, Java, Python เป็นต้น เราหวังว่าคุณจะพบว่าบทช่วยสอนนี้มีประโยชน์