Hướng dẫn php preg_match numbers and letters - php preg_match số và chữ cái

12

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi không muốn preg_match_all ... bởi vì trường biểu mẫu chỉ cho phép các số và chữ cái ... chỉ tự hỏi cú pháp đúng là gì ...

Không có gì lạ mắt ... chỉ cần biết cú pháp đúng cho câu lệnh PREG_MATCH tìm kiếm các số và chữ cái. Cái gì đó như

preg_match('/^([^.]+)\.([^.]+)\.com$/', $unit)

Nhưng điều đó cũng không tìm kiếm các con số ....

Hỏi ngày 5 tháng 4 năm 2011 lúc 14:14Apr 5, 2011 at 14:14

Hướng dẫn php preg_match numbers and letters - php preg_match số và chữ cái

user517593user517593user517593

2.7734 huy hiệu vàng16 Huy hiệu bạc14 Huy hiệu đồng4 gold badges16 silver badges14 bronze badges

3

Nếu bạn chỉ muốn đảm bảo một chuỗi chỉ chứa các ký tự chữ và số. A-Z, A-Z, 0-9 Bạn không cần sử dụng các biểu thức thông thường.

Sử dụng


0

0

Ví dụ từ tài liệu:


Ví dụ trên sẽ xuất ra:

The string AbCd1zyZ9 consists of all letters or digits.
The string foo!#$bar does not consist of all letters or digits.

Đã trả lời ngày 5 tháng 4 năm 2011 lúc 14:20Apr 5, 2011 at 14:20

JacobjacobJacob

8.1831 Huy hiệu vàng22 Huy hiệu bạc29 Huy hiệu đồng1 gold badge22 silver badges29 bronze badges

1

if(preg_match("/[A-Za-z0-9]+/", $content) == TRUE){

} else {

}

Matt

73.2K26 Huy hiệu vàng149 Huy hiệu bạc179 Huy hiệu đồng26 gold badges149 silver badges179 bronze badges

Đã trả lời ngày 5 tháng 4 năm 2011 lúc 14:20Apr 5, 2011 at 14:20

Hướng dẫn php preg_match numbers and letters - php preg_match số và chữ cái

JacobjacobVish

8.1831 Huy hiệu vàng22 Huy hiệu bạc29 Huy hiệu đồng10 gold badges40 silver badges73 bronze badges

2

Matt

73.2K26 Huy hiệu vàng149 Huy hiệu bạc179 Huy hiệu đồng

preg_match("/([a-zA-Z0-9])/", $formContent, $result);
print_r($result);

Vishvish

4.50810 Huy hiệu vàng40 Huy hiệu bạc73 Huy hiệu đồng

Tuy nhiên, nếu bạn muốn khớp nhiều hơn 1, thì bạn sẽ cần, tuy nhiên, cung cấp cho chúng tôi một số mã và chúng tôi có thể giúp tốt hơn.20 gold badges147 silver badges171 bronze badges

mặc dù, trong khi đó:Apr 5, 2011 at 14:18

Hôm nay, tôi muốn chỉ cho bạn một cách, làm thế nào bạn có thể kiểm tra một chuỗi cho một số chữ cái, số hoặc ký tự nhất định.

Ví dụ, một khu vực của ứng dụng sẽ kiểm tra tên người dùng có thể chỉ chứa một số ký tự nhất định.

Đầu tiên, chúng tôi muốn xem xét mã sau:

if (!preg_match("#^[a-zA-Z0-9]+$#", $text)) {
   echo 'String also contains other characters.';	
} else {
   echo 'String only contains numbers and letters.';
}

Ở đây chúng tôi muốn kiểm tra xem chuỗi $ văn bản chỉ bao gồm các chữ cái (A đến Z và A đến Z) và số (chữ số 0 đến 9). Đối với điều này, chúng tôi sử dụng một biểu thức thông thường và preg_match. Là một tham số đầu tiên, chúng tôi vượt qua biểu thức chính quy, trong đó biểu thức chính quy thực được viết giữa " # và #".

Biểu tượng ^ đại diện cho sự khởi đầu của chuỗi. $ Là viết tắt của cuối chuỗi. Ở giữa, tất cả các ký tự được cho phép, được xác định trong lớp ký tự giữa các dấu ngoặc vuông. Các nhân vật trong lớp này có thể xảy ra thường xuyên như họ muốn. Điều này được biểu thị bằng dấu + ở cuối. Trong lớp ký tự, chúng tôi đã xác định các chữ cái chữ thường A-Z, chữ cái trên A-Z và các chữ số 0-9.

Cũng kiểm tra các ký tự khác như các điểm nhấn

Đương nhiên, các điểm nhấn không được bao gồm trong lớp nhân vật A-Z hoặc A-Z. Nếu chúng ta muốn cho phép những nhân vật này, chúng ta phải viết riêng chúng:

if (!preg_match("#^[a-zA-Z0-9äöüÄÖÜ]+$#", $text)) {
   echo 'String also contains other characters';	
} else {
   echo 'String only contains letters and digits.';
}

Vì vậy, chúng tôi có thể thêm bất kỳ nhân vật nào khác vào lớp nhân vật của chúng tôi để kiểm tra các ký tự này.

Kiểm tra các chữ cái nói chung

Cho đến nay, chúng tôi đã xác định các bộ ký tự bằng cách viết từng chữ cái & nbsp; rõ ràng vào lớp nhân vật của chúng tôi. Cuối cùng, không thể viết tất cả các chữ cái có thể tưởng tượng được vào biểu thức thông thường của chúng tôi. Ví dụ sau đây cho thấy cách chúng ta có thể xử lý tình huống này. è, ø, é or ă? Finally, it is not possible to write all conceivable letters to our regular expression. The following example shows a way of how we can handle this situation.

$text = "abcABCäöüÄÖÜßéèâø";
 
if (preg_match("#^\p{L}+$#u", $text)) {
   echo 'String contains arbitrary letters.'; 
}

L là viết tắt của một chữ cái tùy ý, \ p cho một ký tự có thuộc tính được xác định trong dấu ngoặc xoăn phía sau và U là viết tắt của Unicode. Vì vậy, biểu thức chính quy này đang kiểm tra tùy ý, & nbsp; tùy ý & nbsp; các ký tự unicode lặp lại. Regex này có thể được sử dụng kể từ Php phiên bản 5.1.0.

Sử dụng L, chúng tôi đang cho phép viết thường cũng như chữ viết hoa. Nếu bạn chỉ muốn kiểm tra các chữ cái chữ thường hoặc chữ hoa, bạn có thể sử dụng LL (chữ cái chữ thường) hoặc LU (chữ cái chữ hoa) thay vì L.

Cho phép không gian

Thêm ký tự vào bộ thậm chí áp dụng cho không gian. Trong ví dụ này, chúng tôi đã thêm một không gian vào lớp ký tự:

if (!preg_match("#^[a-zA-Z0-9äöüÄÖÜ ]+$#", $text)) {
   echo 'String also contains other characters.';	
} else {
   echo 'String only contains letters, digits and spaces.';
}

Với điều này, cũng có các chuỗi chứa chỗ trống được cho phép.

Điểm, giá đỡ và các ký tự đặc biệt khác

Một số nhân vật có một ý nghĩa đặc biệt trong một biểu thức chính quy. Chúng bao gồm, ví dụ, điểm hoặc dấu ngoặc. Nếu chúng ta muốn đưa các nhân vật như vậy vào lớp nhân vật của mình, chúng ta phải viết điều này:

if (!preg_match("#^[a-zA-Z0-9äöüÄÖÜ \.\]]+$#", $text)) {
   echo 'String also contains other characters.';	
}

Với \ chúng ta có thể thoát khỏi các ký tự tương ứng. Điều đó có nghĩa là: với \ chúng tôi nói rằng nhân vật tiếp theo nên được hiểu là một nhân vật và không phải là một hướng dẫn thông thường. Trong ví dụ, với điều này, chúng tôi thêm một điểm và một khung vuông vào lớp nhân vật của chúng tôi. lớp nhân vật.

Nhưng điều gì sẽ xảy ra nếu chúng ta cũng muốn thêm \ làm nhân vật vào lớp của chúng ta? Nó đơn giản. Ngoài ra, ký tự \ có thể được thoát ra bằng việc viết một \ trước mặt nó. Đơn giản chỉ cần viết \\.

CType-Functions

Chắc chắn, thường được sử dụng các lớp ký tự, bạn có thể dễ dàng sử dụng các hàm CTYPE của PHP. & NBSP; Thêm về chủ đề này trong hướng dẫn chuỗi CTYPE của tôi. Ưu điểm của các hàm CTYPE là chúng tôi không cần biểu thức chính quy và chúng có hiệu suất tốt hơn.

Preg_match trả về trong PHP là gì?

Hàm preg_match () trả về xem một trận đấu có được tìm thấy trong một chuỗi hay không.whether a match was found in a string.

Giá trị nào được trả lại bởi preg_match?

Trả về các giá trị ¶ preg_match () Trả về 1 nếu mẫu khớp với chủ đề đã cho, 0 nếu nó không hoặc sai khi thất bại.Hàm này có thể trả về Boolean Sai, nhưng cũng có thể trả về giá trị phi Boolean đánh giá là sai.Vui lòng đọc phần về Booleans để biết thêm thông tin.1 if the pattern matches given subject , 0 if it does not, or false on failure. This function may return Boolean false , but may also return a non-Boolean value which evaluates to false . Please read the section on Booleans for more information.

Sự khác biệt giữa preg_match và preg_match_all là gì?

preg_match dừng chăm sóc trận đấu đầu tiên.Preg_Match_all, mặt khác, tiếp tục nhìn cho đến khi nó hoàn thành việc xử lý toàn bộ chuỗi.Khi tìm thấy trận đấu, nó sử dụng phần còn lại của chuỗi để thử và áp dụng một trận đấu khác. preg_match_all , on the other hand, continues to look until it finishes processing the entire string. Once match is found, it uses the remainder of the string to try and apply another match.

Preg_match có nghĩa là gì?

preg_match () trong PHP - Hàm này được sử dụng để thực hiện khớp mẫu trong PHP trên một chuỗi.Nó trả về đúng nếu một trận đấu được tìm thấy và sai nếu không tìm thấy trận đấu.preg_split () trong PHP - Hàm này được sử dụng để thực hiện khớp mẫu trên một chuỗi và sau đó chia kết quả thành một mảng số.this function is used to perform pattern matching in PHP on a string. It returns true if a match is found and false if a match is not found. preg_split() in PHP – this function is used to perform a pattern match on a string and then split the results into a numeric array.