| อักขระการแสดงลักษณะ |
คำอธิบาย |
| \ |
ทำเครื่องหมายให้กับตัวอักษรถัดไปว่าเป็นอักขระพิเศษ หรืออักขระที่มีความหมายเดียว หรือการอ้างอิงย้อนหลัง หรืออักขระหลบแปดตัว เช่น “n” ตรงกับอักขระ “n” และ “\n” ตรงกับการเปลี่ยนบรรทัด “\\” ตรงกับ “\” ในขณะที่ “\(” จะตรงกับ “(” |
| ^ |
ตรงกับตำแหน่งเริ่มต้นของสตริงที่ป้อน ถ้าได้ตั้งค่าคุณสมบัติ Multiline ของวัตถุ RegExp แล้ว ^ ยังตรงกับตำแหน่งหลังจาก “\n” หรือ “\r” |
| $ |
ตรงกับตำแหน่งจบของสตริงที่ป้อน ถ้าได้ตั้งค่าคุณสมบัติ Multiline ของวัตถุ RegExp แล้ว $ ยังตรงกับตำแหน่งก่อน “\n” หรือ “\r” |
| * |
ตรงกับอันที่อยู่ก่อนหน้านั้นศูนย์ครั้งหรือมากกว่า เช่น “zo*” สามารถตรงกับ “z” และ “zoo”ได้ * เท่ากับ {0,}. |
| + |
ตรงกับอันที่อยู่ก่อนหน้าหนึ่งครั้งหรือมากกว่า ดังนั้น “zo+” สามารถตรงกับ “zo” และ “zoo” แต่ไม่สามารถตรงกับ “z” ได้ + เท่ากับ {1,}. |
| ? |
ตรงกับอันที่อยู่ก่อนหน้าเป็นศูนย์ครั้งหรือครั้งเดียว เช่น “do(es)?” สามารถตรงกับ “does” หรือ “do” ใน “does” ได้ ? เท่ากับ {0,1}. |
| {n} |
n เป็นจำนวนเต็มไม่เป็นลบ ตรงกับ n ครั้งแน่นอน เช่น “o{2}” ไม่สามารถตรงกับ “Bob” ใน “o” แต่สามารถตรงกับ “food” ใน o สองตัวได้ |
| {n,} |
n เป็นจำนวนเต็มไม่เป็นลบ ตรงกันอย่างน้อย n ครั้ง เช่น “o{2,}” ไม่สามารถตรงกับ “Bob” ใน “o” แต่สามารถตรงกับ “foooood” ใน o ทั้งหมด “o{1,}” เท่ากับ “o+” และ “o{0,}” เท่ากับ “o*” |
| {n,m} |
m และ n เป็นจำนวนเต็มไม่เป็นลบและ n <= m ต้องตรงกัน n ครั้ง แต่ไม่เกิน m ครั้ง เช่น “o{1,3}” จะตรงกับ o สามตัวแรกใน “fooooood” “o{0,1}” เท่ากับ “o?” ต้องอยู่ระหว่าง จำนวน n และ m ห้ามมีช่องว่างคั่นกลาง. |
| ? |
เมื่ออักขระนี้อยู่ข้างหลังตัวบ่งชี้อื่น ( *, +, ?, {n}, {n,}, {n,m} ) การจับคู่ จะเป็นแบบไม่โลภ สำหรับการใช้งานแบบไม่โลภจะจับคู่ที่มีค่าน้อยที่สุดกับสตริงที่ค้นหา โดยค่าเริ่มต้น การจับคู่ที่มีความโลภจะพยายามจับคู่ทั้งมากที่สุดเท่าที่จะเป็นไปได้ สำหรับสตริง “oooo” “o+?” จะตรงกับ “o” หนึ่งตัว ส่วน “o+” จะจับคู่กับ “o” ทั้งหมด |
| . |
ตรงกับอักขระใด ๆ ยกเว้น “\n” หากต้องการจับคู่กับอักขระใด ๆ รวมทั้ง “\n” ให้ใช้แบบฟอร์มเช่น “(.|\n)” |
| (pattern) |
ตรงกับ pattern และดึงการจับคู่ที่เกิดขึ้น การจับคู่ที่ได้สามารถใช้ได้จากชุด Matches ที่เกิดขึ้น ใน VBScript จะใช้ชุด SubMatches ใน JScript จะใช้คุณสมบัติ $0 … $9 หากต้องการตรงกับวงเล็บ ให้ใช้ “\(” หรือ “\)” |
| (?:pattern) |
ตรงกับ pattern แต่ไม่ดึงค่าผลลัพธ์การจับคู่ กล่าวอีกนัยหนึ่ง นี่คือการจับคู่ที่ไม่ทำการเก็บไว้เพื่อใช้ในภายหลัง มีประโยชน์ในการใช้ตัวบ่งชี้หรือ “(|)” เพื่อรวมส่วนต่าง ๆ ของรูปแบบ เช่น “industr(?:y|ies)” เป็นการแสดงออกที่กระชับกว่าที่เรียกว่า “industry|industries” |
| (?=pattern) |
การตรวจสอบยืนยันเชิงบวกในตำแหน่งเริ่มต้นของสตริงที่ค้นหา สำหรับสตริงใด ๆ ที่ตรงกับ Pattern นี่คือการจับคู่ที่ไม่เก็บไว้ โดยไม่มีการเก็บไว้ใช้ในภายหลัง เช่น “Windows(?=95|98|NT|2000)” จะตรงกับ “Windows” ใน “Windows2000” แต่จะไม่ตรงกับ “Windows3.1” ใน “Windows” การตรวจสอบไม่ใช้ตัวอักษร นั่นคือหลังจากการจับคู่เสร็จสิ้นให้เริ่มการค้นหาการจับคู่ครั้งต่อไปทันที ไม่ใช่จากตัวอักษรที่รวมการตรวจสอบ |
| (?!pattern) |
การตรวจสอบเชิงลบในตำแหน่งเริ่มต้นของสตริงที่ค้นหา สำหรับสตริงใด ๆ ที่ไม่ตรงกับ pattern นี้คือการจับคู่ที่ไม่เก็บไว้ ซึ่งไม่จำเป็นต้องเก็บไว้ใช้งานในภายหลัง เช่น “Windows(?!95|98|NT|2000)” สามารถตรงกับ “Windows3.1” ใน “Windows” แต่ไม่สามารถตรงกับ “Windows2000” ใน “Windows” การตรวจสอบไม่ใช้อักขระเช่นกัน กล่าวอีกนัยหนึ่งหลังจากการจับคู่เสร็จสิ้น ค้นหาการจับคู่ครั้งถัดไปทันที ไม่ใช่จากตัวอักษรที่ร่วมตรวจสอบ |
| (?<=pattern) |
การตรวจสอบยืนยันเชิงลบย้อนกลับ ในลักษณะเดียวกับการตรวจสอบยืนยันเชิงบวก แต่ในทิศทางที่ตรงกันข้าม เช่น “(?<=95|98|NT|2000)Windows” สามารถตรงกับ “2000Windows” ใน “Windows” แต่ไม่สามารถตรงกับ “3.1Windows” ใน “Windows” |
| (?<!pattern) |
การตรวจสอบเชิงลบย้อนกลับ ในลักษณะเดียวกับการตรวจสอบเชิงลบ แต่ในทิศทางที่ตรงกันข้าม เช่น “(?<!95|98|NT|2000)Windows” จะตรงกับ “3.1Windows” ใน “Windows” แต่จะไม่ตรงกับ “2000Windows” ใน “Windows” |
| x|y |
ตรงกับ x หรือ y เช่น “z|food” ตรงกับ “z” หรือ “food” “(z|f)ood” ตรงกับ “zood” หรือ “food” |
| [xyz] |
กลุ่มอักขระ ตรงกับอักขระใด ๆ ที่มีอยู่ในวงเล็บ เช่น “[abc]” สามารถจับคู่ได้กับ “plain” |
| [^xyz] |
กลุ่มอักขระลบ ตรงกับอักขระใด ๆ ที่ไม่มีอยู่ในวงเล็บ เช่น “[^abc]” สามารถตรงกับ “plain” ใน “p” |
| [a-z] |
ช่วงอักขระ ตรงกับอักขระใด ๆ จากช่วงที่กำหนด เช่น “[a-z]” สามารถจับคู่ตัวอักษรตัวพิมพ์เล็กตั้งแต่ “a” ถึง “z” |
| [^a-z] |
ช่วงอักขระลบ ตรงกับอักขระใด ๆ ที่ไม่อยู่ในช่วงที่กำหนด เช่น “[^a-z]” สามารถจับคู่กับอักขระที่ไม่อยู่ระหว่าง “a” ถึง “z” |
| \b |
ตรงกับขอบเขตของคำ กล่าวคือ ตรงกับตำแหน่งระหว่างคำกับช่องว่าง เช่น “er\b” ตรงกับ “never” ใน “er” ได้ แต่ไม่ตรงกับ “verb” ใน “er” |
| \B |
ตรงกับไม่ใช่ขอบเขตของคำ “er\B” สามารถตรงกับ “verb” ใน “er” ได้ แต่ไม่สามารถตรงกับ “never” ใน “er” ได้ |
| \cx |
ตรงกับอักขระควบคุมที่ระบุโดย x เช่น \cM จะตรงกับ Control-M หรืออักขระกลับ “c” จะถูกมองว่าเป็นการแสดงลักษณะ |
| \d |
ตรงกับอักขระตัวเลข เท่ากับ [0-9] |
| \D |
ตรงกับอักขระที่ไม่ใช่ตัวเลข เท่ากับ [^0-9] |
| \f |
ตรงกับการเปลี่ยนหน้า เท่ากับ \x0c และ \cL |
| \n |
ตรงกับอักขระการเปลี่ยนบรรทัด เท่ากับ \x0a และ \cJ |
| \r |
ตรงกับอักขระการกลับบรรทัด เท่ากับ \x0d และ \cM |
| \s |
ตรงกับอักขระว่างใด ๆ รวมถึงช่องว่าง อักขระแท็บ การเปลี่ยนหน้า ฯลฯ เท่ากับ [ \f\n\r\t\v] |
| \S |
ตรงกับตัวอักษรที่ไม่ว่าง เท่ากับ [^ \f\n\r\t\v] |
| \t |
ตรงกับอักขระแท็บ เท่ากับ \x09 และ \cI |
| \v |
ตรงกับอักขระแท็บแนวตั้ง เท่ากับ \x0b และ \cK |
| \w |
ตรงกับอักขระคำใด ๆ รวมทั้งอักขระขีดเส้นใต้ เท่ากับ “[A-Za-z0-9_]” |
| \W |
ตรงกับอักขระที่ไม่ใช่อักขระคำ เท่ากับ “[^A-Za-z0-9_]” |
| \xn |
ตรงกับ n, โดยที่ n คือค่าที่มีการหลบสี่เหลี่ยมที่เป็นเลขฐานสิบหก เช่น “\x41” จะตรงกับ “A” “\x041” เท่ากับ “\x04&1” สามารถใช้รหัส ASCII ในการแสดงลักษณะได้ |
| \num |
ตรงกับ num, โดยที่ num เป็นจำนวนเต็มบวก สำหรับการอ้างอิงในการจับคู่ที่ได้รับ เช่น “(.)\1” จะตรงกับอักขระที่เป็นตัวเหมือนกันสองตัว |
| \n |
บ่งชี้ค่าที่ถูกแปลงแบบแปดหรือการอ้างอิงย้อนหลัง ถ้า n มีอยู่ก่อนหน้านี้ อย่างน้อย n อันที่ได้เป็นการอ้างอิงย้อนหลัง ถ้า n เป็นหมายเลขแปด (0-7) จะเป็นค่าแปด |
| \nm |
บ่งชี้ค่าที่ถูกแปลงแปดหรือการอ้างอิงย้อนหลัง ถ้า nm จะต้องมีอยู่ก่อนหน้านี้อย่างน้อย nm อัน ถ้า n อยู่ที่ m เป็นการอ้างอิงที่ไม่มีมาก่อน ถ้าทั้งสองเป็นตัวเลขฐานแปดก็จะจับคู่ค่าแปดที่ถูกแปลงเป็นตัวเลข |
| \nml |
ถ้า n เป็นเลขฐานแปด (0-3) ฝ่าย m กับ l เป็นเลขฐานแปด (0-7) จะตรงกับค่าที่ถูกแปลงแปดเป็น nm. |
| \un |
ตรงกับ n, โดยที่ n คืออักขระ Unicode ที่ใช้ตัวเลขฐานสิบหกสี่หลัก เช่น \u00A9 ตรงกับสัญลักษณ์ลิขสิทธิ์ (©) |