Hướng dẫn python regex match 8 digits - python regex khớp với 8 chữ số
Tôi đang cố gắng sử dụng regex để xác minh đầu vào. Nó nên chấp nhận 8 và chỉ 8 chữ số (không có chữ cái, v.v.). Ví dụ: Show
Tôi đã thử điều này nhưng dường như nó chấp nhận nếu tôi đặt hơn 8 chữ số (nếu tôi thêm các chữ cái sau đó nó cũng chấp nhận) Cảm ơn
SCB 5.6111 Huy hiệu vàng34 Huy hiệu bạc41 Huy hiệu đồng1 gold badge34 silver badges41 bronze badges Đã hỏi ngày 26 tháng 12 năm 2017 lúc 3:54Dec 26, 2017 at 3:54
9 Vấn đề với Regex Wiz hiện tại của bạn 3:
code:
Đã trả lời ngày 26 tháng 12 năm 2017 lúc 4:02Dec 26, 2017 at 4:02
Mahesh Kariamahesh KariaMahesh Karia 2.0351 Huy hiệu vàng11 Huy hiệu bạc21 Huy hiệu đồng1 gold badge11 silver badges21 bronze badges 0
Python biểu hiện chính quy . Tìm hiểu khoa học dữ liệu bằng cách hoàn thành các thách thức mã hóa tương tác và xem video của các giảng viên chuyên gia. Bắt đầu bây giờ! Cập nhật vào ngày 07 tháng 1 năm 2020 Biểu thức chính quy được sử dụng rộng rãi để khớp mẫu. Python đã hỗ trợ tích hợp cho chức năng thường xuyên. Để sử dụng biểu thức chính quy, bạn cần nhập ____ 22 & nbsp; mô -đun. Bây giờ bạn đã sẵn sàng để sử dụng biểu thức chính quy.phương pháp nghiên cứu #
4Cú pháp: 4Phương thức ____ 23 & nbsp; chấp nhận mẫu và chuỗi và trả về một đối tượng 6 & nbsp; khi thành công hoặc 7 nếu không tìm thấy khớp nào. Đối tượng 6 có phương thức 9 chứa văn bản phù hợp trong chuỗi.Bạn phải chỉ định mẫu bằng cách sử dụng chuỗi RAW, tức là Chuỗi sản xuất với >>> import re >>> s = "my number is 123" >>> match = re.search(r'\d\d\d', s) >>> match <_sre.SRE_Match object; span=(13, 16), match='123'> >>> match.group() '123'0 như thế này.
Ở trên, chúng tôi đã sử dụng ________ 34 & nbsp; As & nbsp; mẫu. ________ 19 & nbsp; trong biểu thức chính quy khớp với một chữ số, vì vậy ________ 34 & nbsp; sẽ khớp các chữ số như >>> import re >>> s = "my number is 123" >>> match = re.search(r'\d\d\d', s) >>> match <_sre.SRE_Match object; span=(13, 16), match='123'> >>> match.group() '123'7, >>> import re >>> s = "my number is 123" >>> match = re.search(r'\d\d\d', s) >>> match <_sre.SRE_Match object; span=(13, 16), match='123'> >>> match.group() '123'8, ________ 39. & nbsp; nó sẽ không khớp với import re s = "tim email is " match = re.search(r'[\w.-]+@[\w.-]+', s) # the above regular expression will match a email address if match: print(match.group()) else: print("match not found")0, import re s = "tim email is " match = re.search(r'[\w.-]+@[\w.-]+', s) # the above regular expression will match a email address if match: print(match.group()) else: print("match not found")1. Các mẫu cơ bản được sử dụng trong biểu thức chính quy #
Hãy lấy thêm một ví dụ nữa:
Ở đây chúng tôi đã sử dụng mẫu ____ 71 & nbsp; để phù hợp với địa chỉ email. Khi thành công, 3 trả về một đối tượng 6 & nbsp ;, và phương thức 9 của nó sẽ chứa văn bản phù hợp.Tập đoàn chụp #Chụp nhóm cho phép trích xuất các bộ phận từ chuỗi phù hợp. Bạn có thể tạo các nhóm bằng dấu ngoặc đơn import re s = "Tim's phone numbers are 12345-41521 and 78963-85214" match = re.findall(r'\d{5}', s) if match: print(match)5. Giả sử chúng tôi muốn trích xuất tên người dùng và tên máy chủ từ địa chỉ email trong ví dụ trên. Để làm điều này, chúng ta cần thêm import re s = "Tim's phone numbers are 12345-41521 and 78963-85214" match = re.findall(r'\d{5}', s) if match: print(match)5 xung quanh tên người dùng và tên máy chủ như thế này. match = re.search(r'([\w.-]+)@([\w.-]+)', s) Lưu ý rằng dấu ngoặc đơn sẽ không thay đổi những gì mẫu sẽ phù hợp. Nếu trận đấu thành công thì import re s = "Tim's phone numbers are 12345-41521 and 78963-85214" match = re.findall(r'\d{5}', s) if match: print(match)7 sẽ chứa trận đấu từ dấu ngoặc đơn đầu tiên và import re s = "Tim's phone numbers are 12345-41521 and 78963-85214" match = re.findall(r'\d{5}', s) if match: print(match)8 sẽ chứa trận đấu từ dấu ngoặc đơn thứ hai.
hàm findall () #Như bạn đã biết bây giờ 3 chỉ tìm thấy trận đấu đầu tiên cho mẫu, điều gì sẽ xảy ra nếu chúng ta muốn tìm tất cả các trận đấu trong chuỗi, đây là nơi ['12345', '41521', '78963', '85214']0 đi vào vở kịch. Cú pháp: ['12345', '41521', '78963', '85214']1 Khi thành công, nó trả về tất cả các trận đấu như một danh sách các chuỗi, nếu không thì một danh sách trống.
Đầu ra dự kiến: ['12345', '41521', '78963', '85214'] Bạn cũng có thể sử dụng việc chụp nhóm với ['12345', '41521', '78963', '85214']0, khi việc bắt nhóm được áp dụng sau đó ['12345', '41521', '78963', '85214']0 trả về danh sách các bộ dữ liệu trong đó các bộ dữ liệu sẽ chứa các nhóm phù hợp. Một ví dụ sẽ xóa mọi thứ.
Đầu ra dự kiến:
Bạn cũng có thể sử dụng việc chụp nhóm với ['12345', '41521', '78963', '85214'] 0, khi việc bắt nhóm được áp dụng sau đó ['12345', '41521', '78963', '85214'] 0 trả về danh sách các bộ dữ liệu trong đó các bộ dữ liệu sẽ chứa các nhóm phù hợp. Một ví dụ sẽ xóa mọi thứ.Cờ tùy chọn #
Điều này sẽ cho phép import re s = "tim email is " match = re.search('([\w.-]+)@([\w.-]+)', s) if match: print(match.group()) ## (the whole match) print(match.group(1)) ## tim (the username, group 1) print(match.group(2)) ## somehost (the host, group 2) 7 và r'^[0-9]{8,8}' 6 để khớp và kết thúc mỗi dòngSử dụng re.match () #
import re s = "Tim's phone numbers are 12345-41521 and 78963-85214" match = re.findall(r'(\d{5})-(\d{5})', s) print(match) for i in match: print() print(i) print("First group", i[0]) print("Second group", i[1])3 rất giống với sự khác biệt 3 là nó sẽ bắt đầu tìm kiếm các trận đấu ở đầu chuỗi.
Bạn có thể hoàn thành điều tương tự bằng cách áp dụng ____ ____ 67 & nbsp; cho một mẫu & nbsp; với 3.Điều này hoàn thành mọi thứ bạn cần biết về mô -đun 2 trong Python.Hướng dẫn khác (Nhà tài trợ) Regex nào phù hợp với một hoặc nhiều chữ số Python?Bạn có thể sử dụng \ dmf \ d+, hoặc, nếu bạn muốn chỉ khớp với 1 hoặc 2 chữ số ở cuối, ra \ dmf \ d {1,2}.\dmf\d+ , or, if you want to match only 1 or 2 digits at the end, out\dmf\d{1,2} .
Regex ở Python là gì?Một biểu thức regex, hoặc biểu thức chính quy, là một chuỗi các ký tự tạo thành một mẫu tìm kiếm.Regex có thể được sử dụng để kiểm tra xem một chuỗi có chứa mẫu tìm kiếm được chỉ định không.a sequence of characters that forms a search pattern. RegEx can be used to check if a string contains the specified search pattern.
R trong regex python là gì?'R' khi bắt đầu chuỗi mẫu chỉ định chuỗi "RAW" Python đi qua các dấu gạch chéo ngược mà không thay đổi, rất tiện dụng cho các biểu thức thông thường (Java cần tính năng này một cách tồi tệ!).designates a python "raw" string which passes through backslashes without change which is very handy for regular expressions (Java needs this feature badly!). |