ตัวอย่างของนิพจน์ทั่วไป
จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน
บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ
ตัวอย่างต่อไปนี้จะแสดงการใช้และการสร้างนิพจน์ทั่วไปแบบง่าย แต่ละตัวอย่างจะมีประเภทข้อความที่จะจับคู่ นิพจน์ทั่วไปอย่างน้อย 1 รายการที่ตรงกับข้อความ และหมายเหตุอธิบายเกี่ยวกับการใช้อักขระพิเศษและการจัดรูปแบบ
โปรดดูคำแนะนำและหลักเกณฑ์เพิ่มเติมในหลักเกณฑ์สำหรับการใช้
นิพจน์ทั่วไปและไวยากรณ์ RE2 รวมถึงตั้งกฎการปฏิบัติตามข้อกำหนดด้านเนื้อหา
ข้อสำคัญ: เรารองรับไวยากรณ์ RE2
เท่านั้น ซึ่งแตกต่างจาก PCRE เล็กน้อย โดยค่าเริ่มต้น นิพจน์ทั่วไปจะคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่
ตรงกับวลีทั้งหมดเท่านั้น
| ตรงกับวลีทั้งหมดเท่านั้น |
| ตัวอย่างการใช้งาน |
จับคู่วลี stock tips |
| ตัวอย่างนิพจน์ทั่วไป |
ตัวอย่าง 1: (\W|^)stock\stips(\W|$)
ตัวอย่าง 2: (\W|^)stock\s{0,3}tips(\W|$)
ตัวอย่าง 3: (\W|^)stock\s{0,3}tip(s){0,1}(\W|$) |
| หมายเหตุ |
- \W จะจับคู่อักขระทั้งหมดที่ไม่ใช่ตัวอักษร ตัวเลข หรือเครื่องหมายขีดล่าง ป้องกันไม่ให้นิพจน์ทั่วไปจับคู่อักขระก่อนหรือหลังวลี
- ในตัวอย่าง 2 \s จะจับคู่กับอักขระเว้นวรรค และ {0,3} ระบุว่ายอมให้มีการเว้นวรรคตั้งแต่ 0 ถึง 3 จุดระหว่างคำว่า stock และ tip
- ^ จะจับคู่จุดเริ่มต้นของบรรทัดใหม่ ทำให้นิพจน์ทั่วไปจับคู่วลีได้ถ้าปรากฏที่ต้นบรรทัด โดยไม่มีอักขระใดๆ นำหน้า
- $ จะจับคู่ท้ายบรรทัด ทำให้นิพจน์ทั่วไปจับคู่วลีได้ถ้าปรากฏที่ท้ายบรรทัด โดยไม่มีอักขระใดๆ ต่อท้าย
- ในตัวอย่าง 3 (s) จะจับคู่ตัวอักษร s และ {0,1} ระบุว่ายอมให้มีตัวอักษรนี้ 0 หรือ 1 ครั้งหลังจากคำว่า tip ดังนั้นนิพจน์ทั่วไปจะจับคู่ stock tip และ stock tips หรือจะใช้อักขระ ? ก็ได้ แทน {0,1}
|
ตรงกับคำหรือวลีในรายการ
| ตรงกับคำหรือวลีในรายการ |
| ตัวอย่างการใช้งาน |
จับคู่คำหรือวลีในรายการต่อไปนี้
- baloney
- แย่
- drat
- fooey
- ให้ตายเถอะ
- เฮ็ค
|
| ตัวอย่างนิพจน์ทั่วไป |
(?i)(\W|^)(baloney|darn|drat|fooey|gosh\sdarnit|heck)(\W|$) |
| หมายเหตุ |
|
ตรงกับคำโดยมีการสะกดหรือสัญลักษณ์พิเศษต่างกัน
| ตรงกับคำโดยมีการสะกดหรือสัญลักษณ์พิเศษต่างกัน |
|
ตัวอย่างการใช้งาน
|
จับคู่คําว่า fast cash กับคําที่ปรับให้ยากต่อการอ่าน (Obfuscation) ซึ่งนักส่งสแปมใช้ เช่น
- f@st c@sh
- f@$t c@$h
- fa$t ca$h
|
| ตัวอย่างนิพจน์ทั่วไป |
f[a4@][s5\$][t7] +c[a4@][s5\$]h
|
| หมายเหตุ |
- ไม่รวม \W เพื่อให้อักขระอื่นๆ ปรากฏก่อนหรือหลัง fast cash ในรูปแบบอื่นๆ ได้ เช่น นิพจน์ทั่วไปจะยังคงจับคู่ fast cash ในข้อความต่อไปนี้
Fast cash!! หรือ ***f@st ca$h***
- [a4@] จับคู่อักขระ a, 4 หรือ @ ในตำแหน่งอักขระตัวที่สองของคำ ซึ่งบ่งชี้ถึงการแทนที่ตัวอักษรที่นักส่งสแปมมักจะใช้เพื่อหลบเลี่ยงการจับคู่ข้อความธรรมดา
|
ตรงกับอีเมลใดก็ได้จากโดเมนที่ระบุ
| ตรงกับอีเมลใดก็ได้จากโดเมนที่ระบุ |
| ตัวอย่างการใช้งาน |
จับคู่อีเมลจากโดเมน yahoo.com, hotmail.com และ gmail.com |
| ตัวอย่างนิพจน์ทั่วไป |
(\W|^)[\w.\-]{0,25}@(yahoo|hotmail|gmail)\.com(\W|$) |
| หมายเหตุ |
- \W จะจับคู่อักขระทั้งหมดที่ไม่ใช่ตัวอักษร ตัวเลข หรือเครื่องหมายขีดล่าง ซึ่งจะป้องกันไม่ให้นิพจน์ทั่วไปจับคู่อักขระก่อนหรือหลังอีเมล
- ^ จะจับคู่จุดเริ่มต้นของบรรทัดใหม่ ทำให้นิพจน์ทั่วไปจับคู่อีเมลได้ถ้าปรากฏที่ต้นบรรทัด โดยไม่มีอักขระใดๆ นำหน้า
- $ จะจับคู่ท้ายบรรทัด ทำให้นิพจน์ทั่วไปจับคู่ที่อยู่ได้ถ้าปรากฏที่ท้ายบรรทัด โดยไม่มีอักขระใดๆ ต่อท้าย
- [\w.\-] จะจับคู่อักขระของคำใดก็ได้ (a-z, A-Z, 0-9 หรือเครื่องหมายขีดล่าง) เครื่องหมายจุด หรือเครื่องหมายขีดกลาง ซึ่งเป็นอักขระที่ถูกต้องที่ใช้กันโดยทั่วไปมากที่สุดในส่วนแรกของอีเมล \- (หมายถึงขีดกลาง) ต้องอยู่ท้ายสุดในรายการอักขระภายในเครื่องหมายวงเล็บแบบเหลี่ยม
- เครื่องหมาย \ หน้าเครื่องหมายขีดและจุดจะ "ยกเว้น" อักขระเหล่านี้ กล่าวคือ เป็นการระบุว่าเครื่องหมายขีดและจุดไม่ใช่อักขระพิเศษของนิพจน์ทั่วไป คุณไม่จำเป็นต้องยกเว้นเครื่องหมายจุดภายในเครื่องหมายวงเล็บแบบเหลี่ยม
- การจัดรูปแบบ (...) จะรวมกลุ่มโดเมน และอักขระ | ที่คั่นระหว่างโดเมนจะหมายถึง "หรือ"
|
ตรงกับที่อยู่ IP ใดก็ได้ในช่วง
| ตรงกับที่อยู่ IP ใดก็ได้ในช่วง |
| ตัวอย่างการใช้งาน |
จับคู่ที่อยู่ IP ใดก็ได้ภายในช่วง 192.168.1.0 ถึง 192.168.1.255 |
| ตัวอย่างนิพจน์ทั่วไป |
ตัวอย่าง 1: 192\.168\.1\.
ตัวอย่าง 2: 192\.168\.1\.\d{1,3} |
| หมายเหตุ |
- เครื่องหมาย \ ก่อนเครื่องหมายจุดจะ "ยกเว้น" เครื่องหมายจุด กล่าวคือ เป็นการระบุว่าเครื่องหมายจุดไม่ใช่อักขระพิเศษของนิพจน์ทั่วไป
- ในตัวอย่าง 1 ไม่มีอักขระตามหลังเครื่องหมายจุดสุดท้าย ดังนั้นนิพจน์ทั่วไปจะจับคู่ที่อยู่ IP ที่เริ่มต้นด้วย 192.168.1. โดยไม่คำนึงถึงตัวเลขที่ตามหลัง
- ในตัวอย่าง 2 \d จะจับคู่ตัวเลขจาก 0 ถึง 9 หลังเครื่องหมายจุดสุดท้าย และ {1,3} ระบุว่ายอมให้มีตัวเลข 1 ถึง 3 ปรากฏหลังจากเครื่องหมายจุดสุดท้าย ในกรณีนี้ นิพจน์ทั่วไปจะจับคู่ที่อยู่ IP ใดก็ตามที่เริ่มต้นด้วย 192.168.1. นิพจน์ทั่วไปนี้ยังจับคู่ที่อยู่ IP ที่ไม่ถูกต้องด้วย เช่น 192.168.1.999
|
| ตรงกับรูปแบบที่เป็นตัวเลขและตัวอักษร |
| ตัวอย่างการใช้งาน |
จับคู่หมายเลขใบสั่งซื้อของบริษัทคุณ หมายเลขนี้มีรูปแบบต่างๆ ได้มากมายดังนี้
- PO nn-nnnnn
- PO-nn-nnnn
- PO# nn nnnn
- PO#nn-nnnn
- PO nnnnnn
|
| ตัวอย่างนิพจน์ทั่วไป |
(\W|^)po[#\-]{0,1}\s{0,1}\d{2}[\s-]{0,1}\d{4}(\W|$) |
| หมายเหตุ |
- \W จะจับคู่อักขระทั้งหมดที่ไม่ใช่ตัวอักษร ตัวเลข หรือเครื่องหมายขีดล่าง ซึ่งจะป้องกันไม่ให้นิพจน์ทั่วไปจับคู่อักขระก่อนหรือหลังหมายเลข
- ^ จะจับคู่จุดเริ่มต้นของบรรทัดใหม่ ทำให้นิพจน์ทั่วไปจับคู่หมายเลขได้ถ้าปรากฏที่ต้นบรรทัด โดยไม่มีอักขระใดๆ นำหน้า
- $ จะจับคู่ท้ายบรรทัด ทำให้นิพจน์ทั่วไปจับคู่หมายเลขได้ถ้าปรากฏที่ท้ายบรรทัด โดยไม่มีอักขระใดๆ ต่อท้าย
- [#\-] จะจับคู่เครื่องหมายสีเหลี่ยมหรือขีดกลางหลังตัวอักษร po และ {0,1} ระบุว่ายอมให้มีอักขระ 1 ตัวในนั้น 1 ครั้ง หรือไม่มีเลย - (หมายถึงขีดกลาง) ต้องอยู่ท้ายสุดในรายการอักขระภายในเครื่องหมายวงเล็บแบบเหลี่ยม
- \s จะจับคู่กับการเว้นวรรค และ {0,1} ระบุว่ายอมให้มีการเว้นวรรค 1 จุดหรือไม่มีเลย
- \d จะจับคู่ตัวเลขจาก 0 ถึง 9 และ {2} ระบุว่าจะต้องมีตัวเลข 2 ตัวเท่านั้นที่ปรากฏในตำแหน่งนี้ในหมายเลข
|
เนื้อหาของหน้าเว็บนี้ได้รับอนุญาตภายใต้ใบอนุญาตที่ต้องระบุที่มาของครีเอทีฟคอมมอนส์ 4.0 และตัวอย่างโค้ดได้รับอนุญาตภายใต้ใบอนุญาต Apache 2.0 เว้นแต่จะระบุไว้เป็นอย่างอื่น โปรดดูรายละเอียดที่นโยบายเว็บไซต์ Google Developers Java เป็นเครื่องหมายการค้าจดทะเบียนของ Oracle และ/หรือบริษัทในเครือ
อัปเดตล่าสุด 2026-03-21 UTC
[[["เข้าใจง่าย","easyToUnderstand","thumb-up"],["แก้ปัญหาของฉันได้","solvedMyProblem","thumb-up"],["อื่นๆ","otherUp","thumb-up"]],[["ไม่มีข้อมูลที่ฉันต้องการ","missingTheInformationINeed","thumb-down"],["ซับซ้อนเกินไป/มีหลายขั้นตอนมากเกินไป","tooComplicatedTooManySteps","thumb-down"],["ล้าสมัย","outOfDate","thumb-down"],["ปัญหาเกี่ยวกับการแปล","translationIssue","thumb-down"],["ตัวอย่าง/ปัญหาเกี่ยวกับโค้ด","samplesCodeIssue","thumb-down"],["อื่นๆ","otherDown","thumb-down"]],["อัปเดตล่าสุด 2026-03-21 UTC"],[],[]]