Thắc mắc về Regular Expression. Liệu Ví dụ có bị sai? Và xin thêm ví dụ

Em thấy hình như ví dụ nó sai. Đáng lẽ phải có chữ the nữa mới đúng.
Thật sự em chưa rành lắm ở chỗ này. Ai đó có thể cho em thêm một số ví dụ được không ạ?

Bạn định hỏi cái gì vậy ? Lập trình hay từ ngữ vậy ?

e hỏi cái ví dụ regular expression này thôi ạ.

1 Like

Muốn biết sai hay ko thì code là ra ngay hỏi làm gì cho mệt.
Muốn nhớ lâu cái này thì vào codewar mà làm bài tập https://www.codewars.com/kata/search/?q=&tags=Regular+Expressions&beta=false
http://sv1.upsieutoc.com/2017/06/05/Screenshotfrom2017-06-0516-57-12.png
p/s: đọc mấy lần mới hiểu câu hỏi
p/s2: mới tìm đc trang này học khá hay https://regexone.com/

cho e hỏi thêm là \bt\w+\b nó có bằng với \bt\w+ không ạ?

1 Like

Với chuỗi trên thì giống, test thử pattern giống hay ko thì vào http://regexr.com/ hoặc https://regex101.com/
Học về regex https://regexone.com/

a có thể cho e một ví dụ mà nó khác nhau được không ạ?

1 Like

M thấy nó giống nhau và ko khác nhau

:smile: tại a nói thế này.

1 Like

thực sự m cũng ko để ý lắm vì muốn test cái gì thì cứ vào 2 trang trên, nên cũng ko bận tâm.
M thấy ứng dụng của thằng regular expression này là để validation data là nhiểu, mà cái này thì pattern có sẵn trên mạng đầy rẫy nên ko nhọc óc thiết kế làm gì. https://kipalog.com/posts/30-doan-bieu-thuc-chinh-quy-ma-lap-trinh-vien-web-nen-biet
Đơn giản cái gì có sẵn thì ta sài :smiley:

e học cho vui. Chứ không phải sử dụng để làm cái gì cả do đó e muốn biết :smile:

1 Like
(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])

Đây là 1 pattern kiểm tra xem 1 chuỗi có phải là 1 email ko. Nhìn xong là m chỉ muốn sử dụng chứ ko muốn biết nó hoạt động như nào rồi :frowning:

e định thử thách bản thân kiểm tra 1 chuỗi có phải là email hay không. Nhưng thôi e không làm nữa đâu :joy:

1 Like

Tự làm thì vẫn được nhưng lọt nhiều trường hợp. Product mà để lọt thì …

tự làm thì miss rất nhiều cái :laughing:

1 Like

Phải match cả the chứ, không biết bạn đọc tài liệu này ở đâu?

Đây ạ :smile:
http://ryanstutorials.net/regular-expressions-tutorial/regular-expressions-intermediate.php#wordbountaries

1 Like

Các ngôn ngữ khác nhau có thể implement regex khác nhau, trang này dạy mà không nói cụ thể nó áp dụng loại regex nào.
Trang này họ viết là:

\b
Matches the beginning or end of a word.

Khác với 2 trang sau, vd: https://regex101.com/r/sm0GsL/1

\b assert position at a word boundary (^\w|\w$|\W\w|\w\W)

==> Bắt đầu bằng 1 ký tự từ (word character, dịch sang tiếng Việt hơi củ chuối, hiểu nôm na là các ký tự tạo nên 1 từ bao gồm [a-zA-Z0-9_]), hoặc kết thúc bằng 1 word character hoặc ở giữa 1 word character và 1 non-word character.

http://www.regular-expressions.info/wordboundaries.html:

There are three different positions that qualify as word boundaries:
  + Before the first character in the string, if the first character is a word character.
  + After the last character in the string, if the last character is a word character.
  + Between two characters in the string, where one is a word character and the other is not a word character.

Mình thấy trang http://www.regular-expressions.info là viết đầy đủ nhất, nếu bạn muốn lên thần thì nên học ở đây :smiley:

1 Like

e cám ơn nhiều ạ…cho đủ 20 chars

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?