Tìm khoảng trống trong chuỗi php

Cho rằng bạn có một chuỗi văn bản trong PHP và nhiệm vụ hiện tại là xóa khoảng trắng khỏi chuỗi đó, bài viết này giải thích thông qua các bước đơn giản, các cách khác nhau để bạn có thể đạt được điều đó. Trong đó, tôi sẽ chứng minh với sự trợ giúp của nhiều ví dụ

Phạm vi bài viết này xoay quanh

  • Xóa khoảng trắng ở cuối chuỗi
  • Xóa tất cả các khoảng trắng thông thường khỏi một chuỗi
  • Xóa tất cả khoảng trắng khỏi chuỗi

Nhưng trước khi chúng ta khám phá từng điều ở trên, điều quan trọng cần lưu ý là không phải tất cả các không gian đều giống nhau. Có nhiều loại khoảng trắng khác nhau có thể xuất hiện trong chuỗi, hầu hết chúng được viết dưới dạng trình tự thoát. Chúng ta hãy xem chúng trong bảng dưới đây

Ký tự khoảng trắng Mô tả" "Ký tự khoảng cách thông thường. "\t"Tab ngang"\n"Đây là ký tự dòng mới (nguồn cấp dữ liệu dòng). Nó đánh dấu phần cuối của dòng cho văn bản xuất hiện trước nó và làm cho văn bản sau nó bắt đầu trong một dòng mới. "\r"Ký hiệu này được gọi là xuống dòng có nghĩa là đi đến đầu dòng. Nó được sử dụng cùng với \n dưới dạng \r\n để chuyển đến đầu dòng tiếp theo. Cái này ngày nay ít dùng. "\v"Tab dọc"\0"Ký tự rỗng

Xóa khoảng trắng ở cuối chuỗi

Khoảng trắng ở đầu hoặc cuối chuỗi trong hầu hết các trường hợp được thêm vào do nhầm lẫn mà bạn không hề hay biết và có thể dẫn đến lỗi khi xử lý chuỗi trong chương trình của bạn

Ví dụ, một lỗi đánh máy có thể dẫn đến hai chuỗi, "hello world" và " hello world". Có vẻ như không có gì to tát nhưng những chuỗi này là hai thứ hoàn toàn khác nhau. Nếu bạn thực hiện so sánh giữa hai toán tử bằng cách sử dụng toán tử bằng nhau == hoặc toán tử giống hệt nhau == . , you would notice that they are treated as two totally different strings due to the leading space for the second string.

đầu ra

Các chuỗi là khác nhau

Các khoảng trắng trước và sau chuỗi này có xu hướng bắt nguồn từ đầu vào của người dùng trong các biểu mẫu. Chẳng hạn, trong các biểu mẫu đăng ký hoặc đăng nhập, người dùng có thể thêm dấu cách trước hoặc sau tên, email, điện thoại, v.v. mà không để ý, điều này có thể dẫn đến sai sót

Do đó, nên cắt bớt các đầu vào này trước khi lưu chúng vào cơ sở dữ liệu hoặc sử dụng chúng để so sánh

Để xóa các khoảng trắng này, chúng ta có thể sử dụng PHP trim() , ltrim()< . or rtrim() functions.

Hàm trim() xóa khoảng trắng và mọi ký tự được xác định trước khác khỏi cả hai đầu của chuỗi.

cú pháp

cắt (chuỗi, danh sách xếp hạng)

Thông số

Tham sốYêu cầuMô tảchuỗiYêu cầuChỉ định chuỗi mà chúng tôi muốn cắt xéndanh sáchTùy chọnChỉ định ký tự nào bạn muốn xóa khỏi phần cuối của chuỗi. Nếu bỏ qua, tất cả các ký tự khoảng trắng sẽ bị xóa (tham khảo bảng ký tự khoảng trắng ở trên cùng)

Thí dụ

";
echo "Length after trim: $length2";

đầu ra

Độ dài chuỗi ban đầu. 14
Chiều dài sau khi cắt. 12

Ban đầu, chúng tôi có chuỗi có khoảng trắng ở đầu và một dấu cách khác ở cuối. Sau đó, chúng tôi đã cắt nó và xóa hai khoảng trắng. Vì nếu chúng tôi in/lặp lại chuỗi trước và sau khi cắt trên màn hình, bạn sẽ không dễ dàng nhận thấy sự khác biệt, tôi đã sử dụng độ dài chuỗi làm cách xác nhận

Ban đầu, chuỗi của chúng tôi có độ dài 14 ký tự. Sau khi xóa 2 dấu cách và kiểm tra lại độ dài, bạn sẽ thấy nó đã bị giảm  2 ký tự sau khi cắt bớt

ví dụ 2

";
echo "String2 length: $length2";

đầu ra

Chiều dài chuỗi1. 14
chiều dài chuỗi2. 12

Trong ví dụ này, chúng tôi đã chỉ định trong tham số thứ hai mà chúng tôi muốn xóa các ký tự " " và "\t"

Các hàm ltrim()rtrim() .

ltrim() - Xóa khoảng trắng hoặc các ký tự được xác định trước khác khỏi phía bên trái của chuỗi.

rtrim() - Xóa khoảng trắng hoặc các ký tự được xác định trước khác khỏi phía bên phải của chuỗi.

Loại bỏ tất cả các không gian thông thường

Để xóa tất cả khoảng trắng giữa các từ hoặc ký tự trong một chuỗi để giữ lại một khối văn bản nhỏ gọn, hãy sử dụng str_replace() .

Hàm str_replace() là một hàm PHP có sẵn được sử dụng để thay thế tất cả các lần xuất hiện của một số ký tự bằng các ký tự khác trong một chuỗi

cú pháp

str_replace(tìm, thay thế, chuỗi, đếm)

Thông số

Tham sốYêu cầuMô tảtìmYêu cầuChỉ định văn bản hoặc ký tự mà chúng tôi muốn thay thế. replaceRequiredChỉ định ký tự hoặc văn bản để thay thế khớp với. stringRequiredChỉ định chuỗi chứa văn bản của các ký tự được thay thế. countOptional Tham số này là một biến lưu trữ số lần thay thế đã xảy ra sau khi hàm được thực thi

Tất cả những gì chúng ta phải làm là sử dụng hàm để thay thế tất cả các phiên bản của không gian thông thường ( " " ) bằng một chuỗi rỗng "".

Thí dụ

đầu ra

Chào bạn. Hôm nay bạn thế nào?

Phương pháp này là tốt nhất cho không gian thông thường. Đây là những khoảng trắng xuất hiện thường xuyên giữa các từ trong một chuỗi (nghĩa là. " "), được chèn bằng cách nhấn phím cách trên bàn phím

Để xóa tất cả các khoảng trắng, bạn nên sử dụng hàm preg_replace() như bên dưới

Xóa tất cả các ký tự khoảng trắng

Khoảng trống thông thường khác với khoảng trắng. Mặc dù không gian thông thường chỉ là không gian thông thường " " , khoảng trắng bao gồm tất cả các loại khoảng trắng bao gồm khoảng trắng thông thường, tab, dòng mới, v.v., như được liệt kê trong .

Hàm str_replace() là cách tốt nhất để loại bỏ chỉ đối với các không gian thông thường. Mặt khác, hàm preg_replace() là cách tốt nhất để xóa tất cả khoảng trắng trong chuỗi

Hàm preg_replace() thay thế tất cả các kết quả khớp của một mẫu hoặc danh sách các mẫu trong một chuỗi bằng các chuỗi con.

cú pháp

preg_replace(mẫu, thay thế, đầu vào, giới hạn, số lượng)

Thông số

Tham sốYêu cầuMô tảMô hìnhYêu cầuBao gồm một biểu thức chính quy hoặc một mảng các biểu thức chính quy. replaceRequiredĐiều này bao gồm một chuỗi thay thế hoặc một mảng các chuỗi thay thế. inputRequiredĐây là chuỗi hoặc mảng chuỗi trong đó việc thay thế sẽ được thực hiện. giới hạnTùy chọnĐiều này đặt giới hạn về số lần thay thế sẽ được thực hiện trong mỗi chuỗi. countOptional Tham số này là một biến chứa số lần thay thế đã xảy ra sau khi hàm được thực thi

Mẫu bao gồm từ hoặc ký tự được thay thế nằm trong dấu gạch chéo mở và đóng về phía trước /từ, cụm từ hoặc ký tự/ .

Trong trường hợp của chúng tôi, chúng tôi sử dụng ký tự \s làm giá trị trong tham số mẫu và một chuỗi trống "" as the replacement.

Nhưng tại sao lại là "\s" mà không phải cái gì khác, bạn có thể thắc mắc. \s là chuỗi thoát cho các ký tự khoảng trắng và khoảng trắng. Nó khớp với bất kỳ ký tự khoảng trắng nào và tương đương với [ \t\n\r\f\v] hoặc [[. không gian. ]]

Làm cách nào để tìm khoảng trắng trong chuỗi PHP?

A hàm ctype_space() trong PHP dùng để kiểm tra xem từng và mọi ký tự của chuỗi có phải là ký tự khoảng trắng hay không. Nó trả về True nếu tất cả các ký tự là khoảng trắng, ngược lại trả về Sai.

Làm cách nào để có được không gian trong PHP?

Việc tạo khoảng trắng trong PHP được thực hiện chủ yếu thông qua hàm "echo". .
Mở tệp PHP trong trình soạn thảo văn bản, chẳng hạn như Windows Notepad. .
Thêm một khoảng trắng giữa các biến PHP bằng cách thêm mã "echo $variable1. "". .
Thêm nhiều khoảng trắng bằng cách thêm mã "echo $variable1. ""

Không gian có phải là một ký tự trong PHP không?

hàm ctype_space() trong PHP . Bên cạnh ký tự trống, ký tự này cũng bao gồm tab, tab dọc, nguồn cấp dữ liệu, ký tự xuống dòng và ký tự nguồn cấp biểu mẫu. It returns TRUE if every character in text creates some sort of white space, FALSE otherwise. Besides the blank character this also includes tab, vertical tab, line feed, carriage return and form feed characters.

Làm cách nào để tìm một ký tự trong chuỗi trong PHP?

Hàm strpos() tìm vị trí xuất hiện đầu tiên của một chuỗi bên trong một chuỗi khác. Ghi chú. Hàm strpos() phân biệt chữ hoa chữ thường.