xin các anh chị giúp đỡ viết pattern lây chuỗi ký tự

Liên hệ QC

File đính kèm

  • Book1.xlsx
    9.8 KB · Đọc: 23
Upvote 0
Upvote 0
Pattern không sai mà có thể do bạn code chưa đúng
RegEx của VBScript không dùng được cho "dòm trước ngó sau". Tức là nó chỉ có thể dòm trước (đi sau cái gì) chứ khong ngó sau (đi trước cái gì.
Có hai cách để giải quyết:
1. dùng Script thay vì vBA
2. dùng capture (như mẫu ở bài #3)

Vì thớt chỉ lấy Matches cho nên được cả nguyên chuỗi. Muốn lọc lấy cái chỗ "captured" phải dùng replace hoặc submatch.
 
Upvote 0
RegEx của VBScript không dùng được cho "dòm trước ngó sau". Tức là nó chỉ có thể dòm trước (đi sau cái gì) chứ khong ngó sau (đi trước cái gì.
Có hai cách để giải quyết:
1. dùng Script thay vì vBA
2. dùng capture (như mẫu ở bài #3)

Vì thớt chỉ lấy Matches cho nên được cả nguyên chuỗi. Muốn lọc lấy cái chỗ "captured" phải dùng replace hoặc submatch.
Bạn chỉ cho tôi cách. Tôi đang tự học nên còn chưa hiểu. Bạn code dùm cho tôi học với
Vì thớt chỉ lấy Matches cho nên được cả nguyên chuỗi. Muốn lọc lấy cái chỗ "captured" phải dùng replace hoặc submatch.
 
Upvote 0
Đừng hỏi vì sao chạy được, vì người khác chỉ cho cái này (bản thân thì không hiểu, nó lằng nhằng quá). Thay regex của CHAOQUAY vẫn chạy được.
Nhớ thêm thư viện ảnh.
Bạn chỉ cho tôi cách. Tôi đang tự học nên còn chưa hiểu. Bạn code dùm cho tôi học với
Vì thớt chỉ lấy Matches cho nên được cả nguyên chuỗi. Muốn lọc lấy cái chỗ "captured" phải dùng replace hoặc submatch.

Mã:
Function ExtractSubstring(inputString As String) As String
    Dim regEx As New RegExp
    regEx.Pattern = "en\.(.*)\.org"
    ExtractSubstring = regEx.Execute(inputString)(0).SubMatches(0)
End Function
 

File đính kèm

  • 1678692599753.png
    1678692599753.png
    43.7 KB · Đọc: 6
Upvote 0
Một cách dùng UDF tổng quát:
=tach(ô chứa text, chuỗi 1,chuỗi 2)
đễ tách text , bắt đầu từ chuỗi 1 và kết thúc bằng chuỗi 2
Giả sử B2 chứa text:
"https://en.wikipedia.org/wiki/FIFA_World_Cup"

Tại D2:
=tach(B2,".org","en.")
kết quả là "wikipedia"

Tại D2:
=tach(B2,".org","FIFA")
kết quả là "wikipedia.org/wiki/"
Capture.JPG
 
Upvote 0
Một cách dùng UDF tổng quát:
=tach(ô chứa text, chuỗi 1,chuỗi 2)
đễ tách text , bắt đầu từ chuỗi 1 và kết thúc bằng chuỗi 2
Giả sử B2 chứa text:
"https://en.wikipedia.org/wiki/FIFA_World_Cup"

Tại D2:
=tach(B2,".org","en.")
kết quả là "wikipedia"

Tại D2:
=tach(B2,".org","FIFA")
kết quả là "wikipedia.org/wiki/"
View attachment 287538
Bài này họ hỏi về cách dùng rexeg bác ạ.
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom