Cách xóa các ký tự đặc biệt khỏi chuỗi trong PHP

How Remove Special Characters From String Php



Đôi khi, bạn có thể cần phải xóa các ký tự đặc biệt khỏi một chuỗi vì mục đích lập trình. PHP có nhiều hàm tích hợp có thể được sử dụng để xóa các ký tự đặc biệt khỏi dữ liệu chuỗi. Hướng dẫn này chỉ cho bạn cách sử dụng một số loại hàm tích hợp sẵn khác nhau của PHP để xóa các ký tự đặc biệt khỏi một chuỗi.

Hàm str_replace ()

Một hàm hữu ích có thể được sử dụng để xóa các ký tự đặc biệt khỏi chuỗi là str_replace () hàm số. Chuỗi trống phải được sử dụng cho ký tự thay thế trong hàm này để xóa ký tự được chỉ định. Cú pháp của hàm này được đưa ra dưới đây.







str_replace ($ search_str, $ Replace_str, $ main_str [,$ đếm ])

Các str_replace () hàm có thể nhận bốn đối số. Ba đối số đầu tiên là bắt buộc và đối số cuối cùng là tùy chọn. Các $ search_str biến lưu trữ giá trị sẽ được tìm kiếm trong chuỗi. Các $ Replace_str biến lưu trữ giá trị sẽ được thay thế từ chuỗi mà văn bản tìm kiếm khớp. Bạn phải sử dụng một chuỗi trống làm giá trị của $ Replace_str biến để xóa văn bản tìm kiếm khỏi chuỗi chính. Các $ đếm đối số lưu trữ một giá trị đại diện cho số lượng ký tự được thay thế hoặc loại bỏ.



Ví dụ: Sử dụng str_replace () để loại bỏ các ký tự đặc biệt

Tập lệnh sau đây cho thấy việc sử dụng str_replace () hàm xóa một ký tự đặc biệt khỏi một chuỗi dữ liệu. Một hàm do người dùng định nghĩa được khai báo trong tập lệnh để thực hiện tác vụ thay thế. Các hàm băm (#), dấu nháy đơn (‘) và dấu chấm phẩy (;) các ký tự được sử dụng làm ký tự tìm kiếm, trong khi chuỗi trống được sử dụng làm văn bản thay thế cho các ký tự này.





/ * Tập lệnh sau sẽ loại bỏ một số

các ký tự đặc biệt từ một chuỗi sử dụng str_replace ()

hàm số

* /




// Xác định chuỗi chính

$ mainstr = '# Đây là một văn bản mô phỏng;';



// Đầu ra trước khi loại bỏ

quăng đi ' Văn bản trước khi xóa:
'
.$ mainstr;



// Gọi hàm

$ Replaceestr =rm_special_char($ mainstr);



// Định nghĩa hàm xóa ký tự khoảng trắng

hàm sốrm_special_char($ str) {

// Xóa '#', '' 'và'; ' sử dụng hàm str_replace ()

$ kết quả = str_replace ( mảng ('#', '' ', ';'), '', $ str);

// Kết quả sau khi loại bỏ

quăng đi '
Văn bản sau khi xóa:
'
.$ kết quả;

}

?>

Đầu ra





Kết quả sau sẽ xuất hiện sau khi chạy tập lệnh được đưa ra ở trên. Giá trị của văn bản chính được in trước khi gọi str_replace () và ba ký tự đặc biệt được xóa khỏi văn bản chính và được in sau đó.



Hàm preg_replace ()

Các preg_replace () hàm được sử dụng để thay thế dữ liệu chuỗi dựa trên mẫu tìm kiếm. Cú pháp của hàm này được đưa ra dưới đây.

preg_replace ( $ mẫu, $ thay thế, $ string [,giới hạn $ [,$ đếm]] )

Hàm này có thể có năm đối số. Ba đối số đầu tiên là bắt buộc và hai đối số cuối cùng là tùy chọn. Các $ mẫu đối số được sử dụng để xác định mẫu để tìm kiếm (các) ký tự trong một chuỗi. Các $ thay thế đối số được sử dụng để xác định văn bản thay thế và văn bản thay thế sẽ là một chuỗi trống được sử dụng để xóa các ký tự đặc biệt. Các $ string đối số được sử dụng để xác định chuỗi chính trong đó mẫu sẽ được tìm kiếm và thay thế.

Ví dụ: Sử dụng preg_replace () để xóa các ký tự đặc biệt

Tập lệnh sau đây cho thấy việc sử dụng preg_replace () hàm để xóa một ký tự đặc biệt cụ thể khỏi dữ liệu chuỗi. Mẫu ‘[0-9 / [0-9% $?] / S’ được sử dụng trong hàm tìm kiếm các ký tự. Thao tác này sẽ tìm kiếm tất cả các ký tự ‘%,’ ‘$,’ và ‘?’ Trong dữ liệu chuỗi và thay thế các ký tự này bằng chuỗi trống nếu các ký tự tồn tại.



/ * Tập lệnh sau sẽ loại bỏ một số

các ký tự đặc biệt từ một chuỗi sử dụng preg_replace ()

hàm số

* /




// Xác định chuỗi chính

$ mainstr = '200 tôi thích$ phplập trình50% ?. ';



// Đầu ra trước khi loại bỏ

quăng đi ' Văn bản trước khi xóa:
'
.$ mainstr;



// Gọi hàm

$ Replaceestr =rm_special_char($ mainstr);



// Định nghĩa hàm xóa ký tự khoảng trắng

hàm sốrm_special_char($ str) {

// Xóa '#', '' 'và'; ' sử dụng hàm str_replace ()

$ kết quả = preg_replace ('/ [0-9% $?] / S','', $ str);

// Kết quả sau khi loại bỏ

quăng đi '
Văn bản sau khi xóa:
'
.$ kết quả;

}

?>

Đầu ra

Kết quả sau sẽ xuất hiện sau khi chạy tập lệnh. Giá trị của văn bản chính sẽ được in trước khi gọi preg_replace () hàm số. Các 200, 50, '%' và '?' các ký tự sẽ bị xóa khỏi văn bản chính và được in sau đó.

Các htmlspecialchars ()str_ireplace () Chức năng

Các htmlspecialchars ()str_ireplace () các hàm được sử dụng để chuyển đổi tất cả các ký tự được xác định trước thành HTML. Ví dụ, ' < 'Sẽ được chuyển đổi thành' & lt , '' & 'Sẽ được chuyển đổi thành' & amp , 'V.v ... Bạn có thể sử dụng các hàm này để loại bỏ ảnh hưởng của bất kỳ ký tự xác định trước nào khỏi dữ liệu chuỗi.

Ví dụ: Sử dụng htmlspecialchars ()str_ireplace () để loại bỏ các ký tự đặc biệt

Tập lệnh sau cho biết cách loại bỏ ảnh hưởng của các ký tự được xác định trước khỏi một chuỗi bằng cách sử dụng htmlspecialchars () hàm số. Sau đó, str_ireplace () được sử dụng để xóa các thực thể HTML khỏi văn bản. Các str_ireplace () chức năng hoạt động giống như str_replace () nhưng nó có thể thực hiện các tìm kiếm không phân biệt chữ hoa chữ thường. Chuỗi chính chứa văn bản với< h2 > và< NS > các thẻ. Vì vậy, khi văn bản in ra trước khi loại bỏ hiệu ứng của các ký tự được xác định trước, chuỗi sẽ được hiển thị với hiệu ứng của tiêu đề HTML và thẻ in đậm. Văn bản thuần túy sẽ được hiển thị sau khi áp dụng các chức năng đã cho.





// Xác định chuỗi chính

$ mainstr = '

Chào mừng bạn đến LinuxHint

'
;



// Đầu ra với các thẻ HTML

quăng đi 'Văn bản trước khi xóa:'.$ mainstr;



// Kết quả đầu ra sau khi xóa các thẻ HTML

quăng đi 'Văn bản sau khi xóa:
'
.

str_ireplace ( mảng (' ', ' '
,'

','

'
),'',

htmlspecialchars ($ mainstr));



?>

Đầu ra

Kết quả sau sẽ xuất hiện sau khi chạy tập lệnh.

Hàm trim ()

Các hàm trim () được sử dụng để xóa các ký tự cụ thể khỏi phần đầu và phần cuối của một chuỗi dữ liệu. Hàm này không thể xóa các ký tự ở giữa một chuỗi dữ liệu. Vì vậy, bạn chỉ có thể sử dụng hàm này nếu muốn xóa các ký tự đặc biệt khỏi đầu và cuối chuỗi.

Ví dụ: Sử dụng Hàm trim () để loại bỏ các ký tự đặc biệt

Tập lệnh sau đây cho thấy việc sử dụng hàm trim () để loại bỏ dấu ‘ @ ' và ' ! Ký tự 'từ đầu và cuối của biến chuỗi $ mainstr . Giá trị của $ mainstr biến sẽ được in cả trước và sau khi xóa các ký tự.





// Xác định chuỗi chính

$ mainstr = '@@ Lập trình Web !!!.';



// Đầu ra trước khi sử dụng trim ()

quăng đi ' Văn bản trước khi xóa:
'
.$ mainstr;



// Kết quả sau khi sử dụng trim ()

quăng đi '
Văn bản sau khi xóa:
'
. cắt tỉa ($ mainstr,'@!');



?>

Đầu ra

Kết quả sau sẽ xuất hiện sau khi chạy tập lệnh. Đây, hai ‘ @ Ký tự 'bị xóa ngay từ đầu và ba ký tự ' ! Các ký tự 'bị xóa khỏi phần cuối của biến chuỗi $ mainstr .

Phần kết luận

Hướng dẫn này đã chỉ cho bạn bốn cách khác nhau để xóa các ký tự đặc biệt khỏi dữ liệu chuỗi. Tôi hy vọng rằng hướng dẫn này sẽ giúp người đọc áp dụng các hàm được cung cấp trong bài viết này vào tập lệnh của họ.