@Tuong
Mình thử với xâu này vẫn lỗi nhé.
Dùng regex, trong trường hợp dấu đóng mở ngoặc nested thì bạn sẽ ko thể biết dấu mở ngoặc nào sẽ nên bắt cặp với dấu đóng ngoặc nào đâu.
Vì phải duyệt hết xâu bạn mới biết được dấu mở ngoặc nào ăn cặp với dấu đóng ngoặc nào. Mà regex cơ chế của nó lại là ăn xâu từ trái qua phải, ko quay lui được:
Vấn đề của em cần phải dùng đến chức năng Negative Lookahead của Regex, cách hoạt động như sau:
Giả sử mình cần exclude (loại bỏ) một chuỗi (chứ không phải 1 ký tự như là ví dụ [^ab] như bên trên nữa) ra khỏi một chuỗi đã bắt được. Thì cần dùng cách viết (?!abc) (Chú ý là dấu ( và ) là bắt buộc phải viết để đủ cú pháp). Trong đó abc là 1 chuỗi các ký tự liền nhau cần loại bỏ. Nếu cần loại bỏ 2 hoặc nhiều chuỗi con thì sao? vậy ta sẽ viết là (?!abc|def|gho).
Vì chuỗi con nằm bên trong chuỗi cha, do đó chúng ta cần viết thêm 1 dấu chấm . ngay đằng sau (?!\/bc) và bọc toàn bộ khối đó lại thành 1 group. Rồi viết thêm *? bên ngoài để nhân bản các ký tự lên thành 1 chuỗi.
Như vậy để viết Regex này ta phải tư duy từ bên trong ra bên ngoài. Và việc viết thêm Negative Lookahead kèm với dấu chấm dạng ((?!abc).)*? thật ra cũng vẫn chính là một biến thể của .*? (bắt một chuỗi dài vô tận, nhưng không được chứa chuỗi con cần loại bỏ bên trong nó)
(\(.+?\))(?=\s)
OK, bạn test với link sau thử https://regex101.com/r/1hiLOm/4 Nói chung là code cũng được, mà mình thì thích tùy biến
theo cái request của mình rồi viết regex sẽ hấp dẫn hơn,
chứ format change 1 tí, code lại 1 đống (^;^)
Bác cho em hỏi là Em muốn kết nối 2 node thuộc 2 vps khác nhau thì làm thế nào ạ.
Hiện tại em có làm theo hướng dẫn nhưng vẫn false.
elastic em dùng là bản 6.5.1
vps em đang dùng là của gg
THẢO LUẬN
hay
love it
chào bạn, link project đây bạn nhé: https://github.com/thanhhau097/Natual-Language-Processing/tree/master/Text Classifier nhớ gắn sao ủng hộ mình nhé
Hay thật, ko có anh chắc e loay hoay đến chết, tks a ^^
Mr Toàn ơi ? Gmail của anh là gì ạ ? Cho em xin với E có 1 ý tưởng nhờ a thảo luận và chia sẻ giùm ak ?
Mr Cường ơi ? Mr rất am hiểu
Bài viết hay Mr Toàn ơi
@Tuong Mình thử với xâu này vẫn lỗi nhé. Dùng regex, trong trường hợp dấu đóng mở ngoặc nested thì bạn sẽ ko thể biết dấu mở ngoặc nào sẽ nên bắt cặp với dấu đóng ngoặc nào đâu. Vì phải duyệt hết xâu bạn mới biết được dấu mở ngoặc nào ăn cặp với dấu đóng ngoặc nào. Mà regex cơ chế của nó lại là ăn xâu từ trái qua phải, ko quay lui được:
https://regex101.com/r/1hiLOm/5
Vấn đề của em cần phải dùng đến chức năng Negative Lookahead của Regex, cách hoạt động như sau:
Giả sử mình cần exclude (loại bỏ) một chuỗi (chứ không phải 1 ký tự như là ví dụ
[^ab]như bên trên nữa) ra khỏi một chuỗi đã bắt được. Thì cần dùng cách viết(?!abc)(Chú ý là dấu(và)là bắt buộc phải viết để đủ cú pháp). Trong đó abc là 1 chuỗi các ký tự liền nhau cần loại bỏ. Nếu cần loại bỏ 2 hoặc nhiều chuỗi con thì sao? vậy ta sẽ viết là(?!abc|def|gho).Vì chuỗi con nằm bên trong chuỗi cha, do đó chúng ta cần viết thêm 1 dấu chấm
.ngay đằng sau(?!\/bc)và bọc toàn bộ khối đó lại thành 1 group. Rồi viết thêm*?bên ngoài để nhân bản các ký tự lên thành 1 chuỗi.Như vậy để viết Regex này ta phải tư duy từ bên trong ra bên ngoài. Và việc viết thêm Negative Lookahead kèm với dấu chấm dạng
((?!abc).)*?thật ra cũng vẫn chính là một biến thể của.*?(bắt một chuỗi dài vô tận, nhưng không được chứa chuỗi con cần loại bỏ bên trong nó)Link chạy ngon: https://regex101.com/r/SThqo2/2
bài viết của mình chỉ là hướng đi nhé, cụ thể các bạn tìm hiểu thêm nhé
https://regex101.com/r/SThqo2/1 Vẫn là ví dụ đó anh, loại bỏ nhiều ký tự liền kề nhau ở giữa chuỗi, không phải là ký tự đứng độc lập nữa anh
Anh chưa hiểu rõ vấn đề lắm. Em có thể share ví dụ trên regex101.com được không?
à e có 1 vấn đề nữa là sao để loại bỏ chuỗi có
/a&/bcở giữa. còn chuỗi chỉ có riêng lẻ/thì vẫn giữTuyệt vời, đúng thứ em đang cần tìm hiểu :3
(\(.+?\))(?=\s)
OK, bạn test với link sau thử
https://regex101.com/r/1hiLOm/4
Nói chung là code cũng được, mà mình thì thích tùy biến
theo cái request của mình rồi viết regex sẽ hấp dẫn hơn,
chứ format change 1 tí, code lại 1 đống (^;^)
Bác cho em hỏi là Em muốn kết nối 2 node thuộc 2 vps khác nhau thì làm thế nào ạ. Hiện tại em có làm theo hướng dẫn nhưng vẫn false. elastic em dùng là bản 6.5.1 vps em đang dùng là của gg
Đúng rồi, đọc phía trên cũng đang thắc mắc mất công foreach (y)
có share link project không bạn
Mình nghĩ là bạn nếu lấy nguồn ở đâu thì nên trích dẫn nguồn, vì ảnh của bạn sử dụng từ hướng dẫn của css-tricks https://css-tricks.com/snippets/css/a-guide-to-flexbox/