Chào mừng trở lại.
Cho đến nay, chúng tôi chỉ tìm thấy những mẫu đơn giản.
Các mẫu văn bản đơn giản trong chuỗi của chúng tôi.
Không có gì quá điên rồ.
Nhưng những gì biểu thức chính quy trở nên thực sự hữu ích là đối với các mẫu nâng cao.
Bạn thấy đấy, với các biểu thức chính quy, bạn có thể thực hiện một số mẫu điên rồ như giả sử điều này và điều này trông
giống như hoàn toàn vô nghĩa, phải không?
Nhưng điều này có nghĩa là một cái gì đó trong biểu thức chính quy.
Bạn có thể coi biểu thức chính quy như một ngôn ngữ toàn bộ với các mẫu khác nhau
mà bạn sử dụng để tìm, tốt, các mẫu bên trong văn bản.
Bây giờ, toàn bộ thế giới của biểu thức chính quy thực sự, thực sự phức tạp.
Là một lập trình viên, tôi không mong đợi bạn học được tất cả những mẫu này.
Bạn có thể xem một số trong số họ ở đây.
Chúng tôi có các chuỗi đặc biệt có nghĩa là một cái gì đó như Slash DD trả về một kết quả phù hợp trong đó chuỗi
chứa các chữ số từ 0 đến 9.
Bạn có những thứ như bộ ở đây, trong đó nếu bạn nhập vào biểu thức chính quy, nó sẽ trả về kết quả khớp cho bất
kỳ ký tự nào theo thứ tự bảng chữ cái giữa A và Z, cho dù chúng là chữ thường hay chữ hoa.
Vì vậy, có tất cả những phím tắt và thủ thuật nhỏ này mà họ có thể viết trong một biểu thức chính quy.
Và mọi thứ có thể trở nên thực sự, thực sự phức tạp.
Vì vậy, không ai thực sự ghi nhớ những điều này.
Bạn phát triển chúng khi có nhu cầu.
Và thực tế là, ở phần sau của các video, chúng ta sẽ thực hiện một bài tập trong đó chúng ta sẽ thực sự thử nghiệm điều
này và tạo một trình kiểm tra mật khẩu và kiểm tra email.
Bây giờ, một trong những công cụ mà tôi thực sự rất thích có tên là RegEx 101.
Nó siêu, siêu hữu ích.
Tất cả những gì bạn làm là chúng tôi sẽ chọn Python và nó sẽ cung cấp cho bạn các biểu thức chính quy và một nền tảng thử nghiệm để
bạn kiểm tra.
Ví dụ, nếu tôi viết một cái gì đó như, Này, bạn có khỏe không?
Bây giờ tôi có thể nhập biểu thức chính quy tại đây và thử mọi thứ.
Vì vậy, ví dụ, nếu tôi nhập Hey.
Bạn khỏe không?
Hừ!
Chà, điều này không thực sự hiệu quả.
Có lẽ tôi có thể thêm một số trích dẫn xung quanh đây.
Nhưng không.
Và nó thực sự cung cấp cho bạn một số tùy chọn và thông tin về những gì bạn có thể sử dụng.
Vì vậy, ví dụ, giả sử chúng tôi muốn kiểm tra xem.
Vâng, ngay tại đây, một ký tự trong phạm vi A đến Z hoặc A đến Z.
Nếu tôi sao chép cái này.
Và tôi dán nó vào.
Nhìn kìa.
Nó mang lại cho tôi những trận đấu đầy đủ mà tôi có.
Trong trường hợp này, tôi đang kiểm tra xem, này, nó có khớp với ký tự nào từ A đến Z không?
Cả viết thường và viết hoa.
Mọi thứ đều phù hợp ngay bây giờ.
Bạn thấy ở đây rằng chúng tôi có khớp một, khớp hai, khớp ba, vân vân.
Tôi cũng có thể nhóm các thứ để tôi có thể làm dấu ngoặc ở đây.
Và bây giờ đây là nhóm bắt đầu tiên.
Và sau đó tôi có thể làm điều gì đó khác ở đây.
Hãy nói ở đây tôi muốn chúng ta hãy nói bất cứ điều gì đó là a.
Vậy nó có nghĩa gì ở đây?
Tôi có một lời giải thích ở phía bên tay phải.
Nhóm chụp đầu tiên nói, này, hãy khớp với một ký tự duy nhất có trong danh sách bên dưới.
Vì vậy, nó cho bạn biết từ A đến Z.
Viết hoa từ A đến Z.
Và sau đó nhóm bắt thứ hai là hey, khớp với một ký tự duy nhất có trong danh sách bên dưới,
đó là a.
Bây giờ ở đây, tôi có hai nhóm bắt.
Vì vậy, nhóm chụp đầu tiên và sau đó là nhóm chụp thứ hai.
Nếu tôi thêm dấu chấm ở đây, đó là một ý nghĩa đặc biệt và biểu thức chính quy, nếu tôi di chuột qua, bạn
sẽ thấy nó khớp với bất kỳ ký tự nào ngoại trừ các dấu cuối dòng.
Vậy tôi đang làm gì ở đây?
Vâng, tôi là người đầu tiên có.
Này, tôi muốn bạn kiểm tra nhóm chụp đầu tiên, là bất kỳ ký tự đơn nào trong phạm vi
từ A đến Z.
Và sau đó, tôi muốn bất kỳ nhân vật nào.
Và sau đó, tôi muốn bạn tìm kiếm tốt bất kỳ trận đấu nào của a.
Vì vậy, đây là những gì chúng tôi phù hợp cho.
Chúng ta có thể so khớp W vì chúng ta đang tìm kiếm bất kỳ chữ cái nào và sau đó là dấu cách hoặc bất kỳ ký tự nào và sau đó
là A.
Vì vậy, bây giờ chúng tôi có một trận đấu đầy đủ là w2a và sau đó chúng tôi có nhóm một.
Đó là w vì nó phù hợp với nhóm đầu tiên và sau đó là nhóm hai, phù hợp với A.
Bây giờ tôi biết điều này là khó hiểu.
Biểu thức chính quy là một trong những thứ mà ban đầu rất khó để tìm ra.
Vì vậy, hãy để tôi chỉ cho bạn cách chúng tôi có thể sử dụng nó.
Nếu tôi truy cập trình tạo mã ở đây, bạn sẽ thấy rằng tôi thực sự có thể cung cấp cho bạn một mã mẫu mà bạn có
thể sử dụng trong Python.
Nhưng những gì tôi thích làm thực sự là sao chép đoạn văn bản này.
Như thế này.
Và quay trở lại trình soạn thảo mã của chúng tôi và trong trình biên dịch.
Dán nó vào.
Bây giờ bạn sẽ nhận thấy rằng có một R ở đây và R là viết tắt của một chuỗi thô, bởi vì trong Python, một cái gì
đó giống như dấu gạch chéo ngược có ý nghĩa đặc biệt.
Vì hãy nhớ rằng, với dấu gạch chéo ngược, chúng ta có thể làm những việc đặc biệt như dòng hoặc tab mới.
Một chữ R nói, Này, đây là một chuỗi thô.
Bỏ qua mọi thứ mà trình thông dịch Python có thể diễn giải.
Tôi muốn đây chỉ là một chuỗi thuần túy vì vậy bạn sẽ thấy điều này rất nhiều với các biểu thức chính quy.
Bây giờ, nếu tôi chạy mã này.
Bạn thấy rằng tôi có ACA ở đây.
Một lần nữa, đó là bởi vì tôi đang tìm kiếm một.
Chữ cái theo sau bởi bất cứ thứ gì theo sau bởi a.
Và nếu tôi có một nhóm ở đây, mà tôi đang tìm kiếm, nếu tôi lập nhóm một.
Tôi nhận được s nếu tôi làm nhóm.
Tôi nhận được một giống như chúng tôi đã làm trong sân chơi của chúng tôi ở đây.
Một điều hữu ích là ở đây.
Nếu bạn nhìn vào phần tham khảo nhanh, bạn thực sự có thể tìm kiếm mọi thứ.
Vì vậy, giả sử tôi muốn kiểm tra xem một chuỗi thử nghiệm có thể bắt đầu bằng hay không.
Vì vậy, tôi có thể nhập bắt đầu ở đây và bạn có thể thấy ở đây rằng oh nó cung cấp cho tôi một tài liệu tham khảo nhanh chóng.
Vì vậy, nếu tôi thực hiện chuỗi bắt đầu, nó sẽ hiển thị cho tôi, này, hãy sử dụng ký tự này và nó sẽ giúp bạn thực hiện chuỗi khởi động.
Vì vậy, nếu tôi làm vậy, hãy nói ở đây củ cà rốt này và nói, Này, nhìn này, nó phù hợp với tôi.
Vì vậy, nó nói, này, khẳng định vị trí ở đầu dòng.
Nó giải thích chính xác ở đây cách nó hoạt động và nó cho tôi biết rằng tôi có một trận đấu đầy đủ ở đây.
Bây giờ, hầu hết thời gian, cách bạn sẽ sử dụng biểu thức chính quy không giống như thế này.
Thực sự sẽ khá khó nếu bạn chỉ tự mình tìm hiểu mọi thứ.
Như tôi đã nói, không ai thực sự ghi nhớ những điều này.
Bạn có thể thấy rằng chúng tôi có các tài liệu tham khảo nhanh về các mã thông báo phổ biến mà bạn có thể xem qua và hiểu.
Nhưng một cách thực tế hơn để thực sự học về biểu thức chính quy là xem một trường hợp sử dụng thực tế.
Bây giờ tôi sẽ để lại một số bài tập cho bạn mà bạn có thể làm nếu bạn muốn tìm hiểu
về một số mô hình phổ biến từ kinh nghiệm của tôi.
Đây không phải là điều mà bất kỳ ai sẽ hỏi bạn trong một cuộc phỏng vấn.
Bạn không thực sự phải ghi nhớ các biểu thức chính quy.
Bạn chỉ cần biết những gì họ làm.
Vì vậy, hãy thử các bài tập nếu bạn muốn.
Nếu không, tôi sẽ gặp bạn trong video tiếp theo để cho bạn biết chính xác cách bạn sẽ sử dụng cụm từ thông dụng
trong một tình huống thực tế.
Tôi sẽ gặp bạn trong đó.
Tạm biệt.