Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Loại bỏ tất cả ký tự không phải chữ cái khỏi chuỗi trong JavaScript

Chúng ta cần viết một hàm JavaScript nhận vào một chuỗi ký tự. Hàm nên xây dựng một chuỗi mới trong đó tất cả các ký tự không phải chữ cái từ chuỗi gốc bị loại bỏ và trả về chuỗi đó. Nếu chuỗi chứa dấu cách, thì không nên bị loại bỏ.

Ví dụ:

Nếu chuỗi đầu vào là:

const str = 'he@656llo wor?ld';

Thì chuỗi đầu ra nên là:

const str = 'he@656llo wor?ld';

Sửa: Output đúng là 'hello world' (loại bỏ @, 656, ?).

Ví dụ

Dưới đây là mã nguồn:

const str = 'he@656llo wor?ld'; const isAlphaOrSpace = char => ((char.toLowerCase() !== char.toUpperCase()) || char === ' '); const removeSpecials = (str = '') => {    let res = '';    const { length: len } = str;    for(let i = 0; i < len; i++){       const el = str[i];       if(isAlphaOrSpace(el)){          res += el;       };    };    return res; }; console.log(removeSpecials(str));

Kết quả

Đầu ra trên console:

hello world

Giải thích: char.toLowerCase() !== char.toUpperCase() kiểm tra xem ký tự có phải chữ cái (có phân biệt hoa/thường) hay không. Dấu cách được giữ riêng. Cách hiện đại: str.replace(/[^a-zA-Z ]/g, '').