Khám phá Wildcard trong Word và cách ứng dụng – Dạy Excel Online Không Tốn Phí

Các ký tự đại diện “*” và “?” thường được dùng để tìm file trên máy tính, chẳng hạn sử dụng “*.doc” để liệt kê mọi file có phần mở rộng là .doc hoặc dùng “a?c.doc” để tìm các file như “abc.doc”, “adc.doc”, và “aac.doc”. Tương tự, trong Excel, Wildcards cực kỳ hữu ích trong việc tìm kiếm. Tuy nhiên, Wildcard trong Word lại còn đem lại nhiều tính năng và sự phức tạp hơn.

Về việc dùng Wildcard trong Word để tìm kiếm và thay thế text với các ký tự đặc biệt này, hãy đảm bảo bạn đã kích hoạt lựa chọn Use Wildcards trong hộp thoại Find/Replace. Trong macro, bạn cần set .Find.MatchWildcards = True. Nếu không, Word sẽ chỉ nhận diện các Wildcard như ký tự bình thường.

Lựa chọn “More” -> “Use Wildcards”

Sử dụng Wildcard, bạn có thể xác định khoảng ký tự bằng ngoặc vuông [], gom nhóm ký tự với ngoặc đơn (), lặp lại ký tự bằng @, xác định cụ thể bằng <> và loại trừ ký tự bằng !. Nắm bắt được các biểu thức chính quy (regular expression) này sẽ giúp bạn tìm kiếm theo mẫu (pattern) cụ thể trong văn bản của mình. Mẫu có thể thay đổi dựa vào ký tự đặc biệt hoặc số lượng ký tự nhất định.

Lưu ý: Word áp dụng cách tìm kiếm mẫu kiểu “lười biếng” (lazy pattern matching), nghĩa là chỉ cần tìm thấy kết quả, quá trình tìm kiếm sẽ dừng. Trong khi đó, công cụ tìm kiếm của Unix lại mặc định tìm càng nhiều dữ liệu càng tốt (“greedy” pattern matching), vì vậy cần cẩn trọng khi sử dụng những phương pháp này.

Điều quan trọng khi sử dụng wildcard là việc áp dụng các “pattern” để xác định chính xác chuỗi cần tìm mà không ảnh hưởng đến nội dung khác. Wildcard cung cấp cách thủ sẵn để thay thế ký tự hoặc chuỗi kẻ tự trong văn bản.

Bởi vì có thể diễn đạt một chuỗi ký tự qua nhiều dạng wildcard khác nhau, thông thường sẽ có nhiều phương án để định nghĩa chuỗi đó trong văn bản. Tùy theo sở thích và ngữ cảnh cụ thể, bạn có thể lựa chọn cách thức thay thế phù hợp nhất.

Danh sách các wildcard bao gồm:

( [ ] { } < > ( ) – @ ? ! * )

Lưu ý 2: Wildcard phân biệt ký tự viết hoa và viết thường

Trong trợ giúp của Word, việc tìm kiếm thông tin về wildcard có thể khó khăn. Nếu bạn muốn tìm hiểu, hãy tìm kiếm chủ đề có tựa đề: “Type wildcards for items you want to find”. Tuy nhiên để đến được chủ đề này, bạn cần phải tìm đến một chủ đề khác tên là “Fine-tune a search by using wildcard characters” và theo dẫn đường từ đó.

Gợi ý: Khi bạn sử dụng wildcard, không cần nhíu mày hay nhếch môi, hãy duy trì biểu cảm của bạn tự nhiên (duy trì biểu thức thông thường).

Khái niệm về Wildcard trong Word

1. ? và *

Dấu ? và dấu * là hai kí tự quan trọng nhất bạn cần biết. Chúng có cách sử dụng tương tự như sau:

Kí tự ? được dùng để thế chỗ cho một kí tự duy nhất.

Còn kí tự * được dùng khi cần thay thế cho một chuỗi kí tự.

s?t có thể giúp bạn tìm thấy các từ như “sit”, “sat”, “set”… miễn là chúng gồm 3 chữ cái, bắt đầu với s và kết thúc bằng t. Nó cũng có khả năng tìm kiếm các từ chứa đoạn văn bản tương ứng – lúc này, phần đã tìm kiếm sẽ được đánh dấu. Ví dụ: s?t có thể tìm ra “set” trong từ “inset”.

s*t sẽ tìm những từ như trên cùng với các từ hoặc cụm từ khác như “secret”, “secret” trong “secretary”, “serpent” hoặc thậm chí “sign over document”.

Khác biệt so với “?” luôn tìm kiếm một kí tự cụ thể, “*” tìm kiếm mọi thứ ở giữa, kể cả khi không có kí tự nào. Ví dụ như s*t có thể tìm thấy “st” hoặc “st” trong “streak”. Không hề có hạn chế cho số lượng kết quả mà “*” có thể tìm kiếm. Do đó, hãy sử dụng nó một cách thận trọng để tránh kết quả tìm kiếm quá lớn.

2. “@”

Kí tự “@” dùng để tìm kiếm một hay nhiều sự xuất hiện liên tiếp của kí tự ngay trước nó. Ví dụ, “lo@t” sẽ trả về các kết quả như “lot”, “lot” trong từ “lotus”, “loot”, “looot”… nhưng không phải là “loat”.

3. “<>”

Dùng cặp dấu ngoặc kép để định vị một từ hoặc kết thúc của từ với các kí tự. Ví dụ khi kết hợp với “*”, <s*t> sẽ tìm ra những cụm từ như “secret”, “serpent”, “sign over document” nhưng sẽ bỏ qua việc tìm “secret” trong “secretary”, hoặc “set” trong “toolset”.

Chúng vẫn sẽ tìm thấy “set” trong “tea-set”.

Sử dụng dấu <> sẽ giúp tìm ra các từ hoàn chỉnh bắt đầu bằng chữ cái đầu tiên và kết thúc với chữ cái cuối cùng. Như trong trường hợp của <s*t>, sẽ tìm bất kỳ cụm từ nào có s làm chữ đầu và t làm chữ cuối cùng.

Cặp dấu <> có thể sử dụng đồng thời hoặc riêng lẻ. Ví dụ, “fu@l>” sẽ tìm “fuuuul”, “ful” trong “wilful” nhưng không tìm được

“ful” nằm trong từ như “fully” hay “wilfully”.

4. []

Dùng cặp dấu ngoặc vuông để chỉ định một nhóm các kí tự cụ thể cần tìm. Ví dụ:

[abc] tìm mọi kí tự a, b hoặc c. [S] tìm kí tự “S” viết hoa. Đối với từ “Secretary”, kí tự “c”“a” sẽ là mục tiêu tìm kiếm.

[A-Z] tìm chữ cái viết hoa. [0-9] tìm các chữ số. [13579] tìm các số lẻ, và tương tự cho các số chẵn. [0-9A-z] tìm chữ và số.

Chuỗi hoặc kí tự trong [] có thể bao gồm cả dấu cách. Các kí tự sẽ được sắp xếp theo thứ tự từ bé đến lớn. Mở hộp thoại Insert và tới phần Symbol để biết thứ tự chính xác nếu bạn không chắc về điều này.

Ví dụ: [Z-A] sẽ không tìm thấy kết quả.

5.

Để tìm kiếm một kí tự đặc biệt như “?”, “*”, thêm dấu gạch chéo trước nó:

[?] sẽ tìm “?” thay vì kí tự “a” hay “b”.

Ghi kí tự đặc biệt đó hai lần trong [] để tìm kiếm nó. Đôi khi cách này không hiệu quả.

Dưới đây là danh sách các kí tự thường dùng như wildcard: ( [ ] { } < > ( ) – @ ? ! * )

6. [!]

[!] tương tự như [] nhưng tìm kí tự không được liệt kê. Chẳng hạn: [!o] sẽ tìm mọi kí tự không phải là “o”. Sử dụng tương tự như [], ví dụ: [!A-Z] sẽ tìm mọi kí tự không phải chữ hoa.

7. {}

Ngoặc nhọn dùng để chỉ số lượng lần xuất hiện của kí tự đứng trước nó.

{n} tìm chính xác n lần lặp của kí tự. Ví dụ: a{2} sẽ tìm “aa”.

{n,} tìm n lần lặp trở lên của kí tự. a{2,} sẽ tìm “aa”, “aaa”, “aaaa”…

Lưu ý: Cách đếm này áp dụng được cho chuỗi kí tự. Kết hợp như vậy sẽ gia tăng đáng kể hiệu quả tìm kiếm. Như ví dụ [deno]{4}, không chỉ tìm “denn”, “oooo”, “nnnn” mà còn và các chuỗi khác.tìm kiếm từ như “done”, “node”, “eden”. Ví dụ khi bạn nhập (ts, ){3}, kết quả thu được sẽ là “ts, ts, ts, “

8. ()

Dấu ngoặc đơn không thực hiện chức năng tìm kiếm mẫu tự, nhưng lại có tác dụng phân chia các mẫu theo trật tự logic để có thể sắp xếp lại trong tính năng thay thế. Chúng cần được sử dụng theo cặp và sẽ được gán số để xác định thứ tự.

Ví dụ: Điền (John) (Smith) vào phần tìm kiếm và nhập 2 1 để thay thế. Bạn sẽ nhận được Smith John (lưu ý là phải có dấu cách).

Nếu chỉ nhập 2, bạn sẽ có kết quả là Smith.

Bên cạnh đó, phép đặt chỗ như 1 2 có thể giúp bạn tìm chuỗi: (Fred) 1 sẽ tìm ra Fred Fred.

Dấu ngoặc đơn rất tiện lợi khi kết hợp với ký tự đại diện trong những tình huống cụ thể và khi dùng với tính năng thay thế.

9. ^

Dấu “^” không phải lúc nào cũng ám chỉ việc tìm kiếm ký tự đại diện và đôi khi nó được ứng dụng một cách khác biệt.

Trong bảng Find & Replace, khi bạn chọn “Find what” và “Replace with” rồi chọn “Special”, một danh sách ký tự đặc biệt sẽ xuất hiện. Khi chọn một ký tự, sẽ có một mã được chèn vào hộp thoại, như “Tab Character” tương ứng với “^t” hoặc “Column Break” là “^n.”

Sau khi biết mã, bạn có thể nhập chúng trực tiếp. Đó chính là chức năng của dấu “^”.

Nút Special

Tuy nhiên, lựa chọn từ nút “Special” khi tìm kiếm với wildcard không mở rộng bằng tìm kiếm thông thường. Dưới đây là một vài trường hợp đáng lưu ý và cách xử lý chúng:

-Khi bạn cần tìm kiếm ký hiệu đoạn văn (paragraph mark – ¶), thông thường sẽ sử dụng ^p, nhưng khi tìm kiếm với wildcard thì ^p lại không có hiệu quả. Thay vào đó, bạn nên dùng ^13 trong tính năng thay thế, nhưng cũng cần cảnh giác với những ký tự giống như đoạn văn mà thực tế lại không phải.

-Wild card không thể tìm kiếm được dấu chỉ chú thích hay ghi chú (footnote/endnote mark). Thay thế bằng cách dùng ^2.

-Trong tìm kiếm thông thường, có thể tìm kiếm theo mã ký tự với ^u và code đi kèm (ví dụ ^u97 để tìm “a”), nhưng điều này không khả thi khi tìm kiếm bằng wildcard. Giải pháp là bạn có thể copy và dán trực tiếp hoặc sử dụng thủ thuật Alt + code để nhập (không áp dụng cho Word 97).

-Có vẻ không tồn tại phương pháp nào để tìm kiếm trường thông tin (field) khi sử dụng wildcard. Ngay cả

Dường như mã ký tự ^19 không hoạt động đúng – có khả năng đây là lỗi phần mềm.

Đối với phần lớn các ký hiệu đặc trưng hay các đối tượng, mã code sử dụng cho việc tìm kiếm là giống nhau như thông thường (^g = đồ họa, ^^ = ký tự mũ).

Thường xuyên, người ta có thể thiết lập ký tự liên kết với con số. Một dẫn chứng rõ ràng là ^13 tương đương với ký tự “¶”. Tuy nhiên, việc dự đoán độ chính xác khi làm như vậy không phải lúc nào cũng dễ dàng. Bạn nên thử nghiệm một số ví dụ cụ thể nếu muốn tìm kiếm sử dụng số lượng ký tự.

Luyện tập

Bài tập 1: Hoán đổi tên và họ

John Smith, Brian Jones và Alan Williams

Nhập trực tiếp tên vào ô Find, còn Replace thì gõ 2 1 để đổi chỗ: (John) (Smith) -> 2 1.

Muốn đổi toàn bộ một lúc, hãy điền vào Find: (<*>) (<*>) và Replace: 2 1

Nếu nhập sai, hãy sử dụng Undo (hoặc nhấn phím Ctrl + Z).

Làm sao nếu đó là tên có chữ viết tắt hoặc tên đệm?

John F. Kennedy

Lai T. Minh

John Smith

Tìm kiếm: (<*) ([! ]@)^13

Thay thế: 2, 1^p

Kết quả nhận được sẽ là:

Kennedy, John F.

Minh, Lai T.

Smith, John

Bài tập 2: Biến đổi định dạng ngày tháng năm

7th August 2001

Tìm: ([0-9]{1,2}[dhnrst]{2}) (<[AFJMNSOD]*>) ([0-9]{4})

Thay vào đó: 2 1, 3

Đề xuất kết quả: August 7, 2001

Bài tập 3: Bổ sung hoặc loại bỏ dấu chấm cuối câu

Người Mỹ thường sử dụng dấu chấm sau các từ viết tắt như Mr., Mrs., Dr., trong khi người Anh lại bỏ qua chúng.

Tìm kiếm: ([DM][rs]{1,2})( ) để tìm các trường hợp Mr, Mrs, Ms, Dr không có dấu chấm.

Thay thế: 1.2 để thêm vào

Trái ngược lại:

Tìm: ([DM][rs]{1,2}).

Thay thế: 1

-> Loại bỏ dấu chấm thừa

Bài tập 4: Loại bỏ đoạn văn bản lặp lại

Tìm kiếm: (*^13)11 để xác định 3 đoạn văn trùng lặp.

Thay thế bằng: 1 để giảm bớt, chỉ giữ lại một đoạn.

Bài tập 5: Xử lý các tag

Tìm: <([!<>]@>)*</1 để tìm các thẻ thuộc tính XML, chẳng hạn như <p>đoạn văn</p>

Hoặc thậm chí:

<customer-name>John Smith</customer-name>

Sau đó, bạn có thể loại bỏ chúng bằng cách để trống phần thay thế.

Nguồn bài viết: https://wordmvp.com/FAQs/General/UsingWildcards.htm

Trương Thành Tài
0
    0
    Đơn hàng
    Đơn hàng trốngQuay lại Shop