Các ký tự đặc biệt trong JavaScript là gì?

Như chúng ta đã thấy, dấu gạch chéo ngược \ được sử dụng để biểu thị các lớp ký tự, e. g. \d. Vì vậy, nó là một ký tự đặc biệt trong biểu thức chính quy (giống như trong các chuỗi thông thường)

Ngoài ra còn có các ký tự đặc biệt khác, có ý nghĩa đặc biệt trong biểu thức chính quy, chẳng hạn như

alert( "function g()".match(/g\(\)/) ); // "g()"
0. Chúng được sử dụng để thực hiện các tìm kiếm mạnh mẽ hơn

Đừng cố ghi nhớ danh sách – chúng ta sẽ sớm xử lý từng danh sách và bạn sẽ tự động thuộc lòng chúng

Giả sử chúng ta muốn tìm một dấu chấm theo đúng nghĩa đen. Không phải "bất kỳ ký tự nào", mà chỉ là một dấu chấm

Để sử dụng ký tự đặc biệt làm ký tự thông thường, hãy thêm dấu gạch chéo ngược vào trước ký tự đó.

alert( "function g()".match(/g\(\)/) ); // "g()"
1

Đó cũng được gọi là "thoát khỏi một nhân vật"

Ví dụ

alert( "Chapter 5.1".match(/\d\.\d/) ); // 5.1 (match!)
alert( "Chapter 511".match(/\d\.\d/) ); // null (looking for a real dot \.)

Dấu ngoặc đơn cũng là ký tự đặc biệt nên nếu muốn chúng ta dùng

alert( "function g()".match(/g\(\)/) ); // "g()"
2. Ví dụ dưới đây tìm kiếm một chuỗi
alert( "function g()".match(/g\(\)/) ); // "g()"
3

alert( "function g()".match(/g\(\)/) ); // "g()"

Nếu chúng ta đang tìm dấu gạch chéo ngược \, thì đó là một ký tự đặc biệt trong cả chuỗi thông thường và biểu thức chính quy, vì vậy chúng ta nên nhân đôi nó

alert( "1\\2".match(/\\/) ); // '\'

Ký hiệu dấu gạch chéo

alert( "function g()".match(/g\(\)/) ); // "g()"
5 không phải là một ký tự đặc biệt, nhưng trong JavaScript, nó được sử dụng để mở và đóng biểu thức chính quy.
alert( "function g()".match(/g\(\)/) ); // "g()"
6, vì vậy chúng ta cũng nên thoát khỏi nó

Đây là cách tìm kiếm dấu gạch chéo

alert( "function g()".match(/g\(\)/) ); // "g()"
5

alert( "/".match(/\//) ); // '/'

Mặt khác, nếu chúng tôi không sử dụng

alert( "function g()".match(/g\(\)/) ); // "g()"
8, nhưng tạo biểu thức chính quy bằng cách sử dụng
alert( "function g()".match(/g\(\)/) ); // "g()"
9, thì chúng tôi không cần phải thoát khỏi nó

alert( "/".match(new RegExp("/")) ); // finds /

Nếu chúng ta đang tạo một biểu thức chính quy với

alert( "function g()".match(/g\(\)/) ); // "g()"
9, thì chúng ta không cần phải thoát khỏi
alert( "1\\2".match(/\\/) ); // '\'
1 mà cần thực hiện một số thao tác thoát khác

Ví dụ, hãy xem xét điều này

let regexp = new RegExp("\d\.\d");

alert( "Chapter 5.1".match(regexp) ); // null

Tìm kiếm tương tự trong một trong các ví dụ trước đã hoạt động với

alert( "1\\2".match(/\\/) ); // '\'
2, nhưng
alert( "1\\2".match(/\\/) ); // '\'
3 không hoạt động, tại sao?

Lý do là các dấu gạch chéo ngược được "tiêu thụ" bởi một chuỗi. Như chúng ta có thể nhớ lại, các chuỗi thông thường có các ký tự đặc biệt của riêng chúng, chẳng hạn như

alert( "1\\2".match(/\\/) ); // '\'
4 và dấu gạch chéo ngược được sử dụng để thoát

chr  HexCode   Numeric   HTML entity  escape(chr)  encodeURI(chr)   Description "\x22""%22%22 quotation mark &\x26&&%26& ampersand <"0"1"1"3"3 less-than sign >"5"6"6"8"8 greater-than sign "0"1"1"3"4 non-breaking space ¡"5"6"6"8"9 inverted exclamation mark ¢%220%221%221%223%224 cent sign £%225%226%226%228%229 pound sign ¤%220%221%221%223%224 currency sign ¥%225%226%226%228%229 yen sign = yuan sign ¦\x260\x261\x261\x263\x264 broken vertical bar §\x265\x266\x266\x268\x269 section sign ¨&0&1&1&3&4 diaeresis = spacing diaeresis ©&5&6&6&8&9 copyright sign ª&0&1&1&3&4 feminine ordinal indicator «&5&6&6&8&9 left-pointing double angle quotation mark = left pointing guillemet ¬%260%261%261%263%264 not sign ­%265%266%266%268%269 soft hyphen = discretionary hyphen ®&0&1&1&3&4 registered sign = registered trademark sign ¯&5&6&6&8&9 macron = spacing macron = overline = APL overbar °"00"01"01"03"04 degree sign ±"05"06"06"08"09 plus-minus sign = plus-or-minus sign ²"10"11"11"13"14 superscript two = superscript digit two = squared ³"15"16"16"18"19 superscript three = superscript digit three = cubed ´"20"21"21"23"24 acute accent = spacing acute µ"25"26"26"28"29 micro sign ¶"30"31"31"33"34 pilcrow sign = paragraph sign ·"35"36"36"38"39 middle dot = Georgian comma = Greek middle dot ¸"40"41"41"43"44 cedilla = spacing cedilla ¹"45"46"46"48"49 superscript one = superscript digit one º"50"51"51"53"54 masculine ordinal indicator »"55"56"56"58"59 right-pointing double angle quotation mark = right pointing guillemet ¼"60"61"61"63"64 vulgar fraction one quarter = fraction one quarter ½"65"66"66"68"69 vulgar fraction one half = fraction one half ¾"70"71"71"73"74 vulgar fraction three quarters = fraction three quarters ¿"75"76"76"78"79 inverted question mark = turned question mark ×"80"81"81"83"84 multiplication sign ÷"85"86"86"88"89 division sign ƒ"90"91"91"93"94 latin small f with hook = function = florin ˆ"95"96"96"98"99 modifier letter circumflex accent ˜"00"01"01"03"04 small tilde "05"06"06"08"09 en space "10"11"11"13"14 em space "15"16"16"18"19 thin space ‌"20"21"21"23"24 zero width non-joiner ‍"25"26"26"28"29 zero width joiner ‎"30"31"31"33"34 left-to-right mark ‏"35"36"36"38"39 right-to-left mark –"40"41"41"43"44 en dash —"45"46"46"48"49 em dash ‘"50"51"51"53"54 left single quotation mark ’"55"56"56"58"59 right single quotation mark ‚"60"61"61"63"64 single low-9 quotation mark “"65"66"66"68"69 left double quotation mark ”"70"71"71"73"74 right double quotation mark „"75"76"76"78"79 double low-9 quotation mark †"80"81"81"83"84 dagger ‡"85"86"86"88"89 double dagger •"90"91"91"93"94 bullet = black small circle …"95"96"96"98"99 horizontal ellipsis = three dot leader ‰%2200%2201%2201%2203%2204 per mille sign ′%2205%2206%2206%2208%2209 prime = minutes = feet ″%2210%2211%2211%2213%2214 double prime = seconds = inches ‹%2215%2216%2216%2218%2219 single left-pointing angle quotation mark ›%2220%2221%2221%2223%2224 single right-pointing angle quotation mark ‾%2225%2226%2226%2228%2229 overline = spacing overscore ⁄%2230%2231%2231%2233%2234 fraction slash €%2235%2236%2236%2238%2239 euro sign ℑ%2240%2241%2241%2243%2244 blackletter capital I = imaginary part ℓ%2245%2246%2247%2248 script small L №%2249%2250%2251%2252 numero sign ℘%2253%2254%2254%2256%2257 script capital P = power set = Weierstrass p ℜ%2258%2259%2259%2261%2262 blackletter capital R = real part symbol ™%2263%2264%2264%2266%2267 trademark sign ℵ%2268%2269%2269%2271%2272 alef symbol = first transfinite cardinal ←%2273%2274%2274%2276%2277 leftwards arrow ↑%2278%2279%2279%2281%2282 upwards arrow →%2283%2284%2284%2286%2287 rightwards arrow ↓%2288%2289%2289%2291%2292 downwards arrow ↔%2293%2294%2294%2296%2297 left right arrow ↵%2298%2299%2299%2201%2202 downwards arrow with corner leftwards = carriage return ⇐%2203%2204%2204%2206%2207 leftwards double arrow ⇑%2208%2209%2209%2211%2212 upwards double arrow ⇒%2213%2214%2214%2216%2217 rightwards double arrow ⇓%2218%2219%2219%2221%2222 downwards double arrow ⇔%2223%2224%2224%2226%2227 left right double arrow ∀%2228%2229%2229%2231%2232 for all ∂%2233%2234%2234%2236%2237 partial differential ∃%2238%2239%2239%2241%2242 there exists ∅%2243%2244%2244%2246%2247 empty set = null set = diameter ∇%2248%2249%2249%2251%2252 nabla = backward difference ∈%2253%2254%2254%2256%2257 element of ∉%2258%2259%2259%2261%2262 not an element of ∋%2263%2264%2264%2266%2267 contains as member ∏%2268%2269%2269%2271%2272 n-ary product = product sign ∑%2273%2274%2274%2276%2277 n-ary sumation −%2278%2279%2279%2281%2282 minus sign ∗%2283%2284%2284%2286%2287 asterisk operator √%2288%2289%2289%2291%2292 square root = radical sign ∝%2293%2294%2294%2296%2297 proportional to ∞%2298%2299%2299\x2601\x2602 infinity ∠\x2603\x2604\x2604\x2606\x2607 angle ∧\x2608\x2609\x2609\x2611\x2612 logical and = wedge ∨\x2613\x2614\x2614\x2616\x2617 logical or = vee ∩\x2618\x2619\x2619\x2621\x2622 intersection = cap ∪\x2623\x2624\x2624\x2626\x2627 union = cup ∫\x2628\x2629\x2629\x2631\x2632 integral ∴\x2633\x2634\x2634\x2636\x2637 therefore ∼\x2638\x2639\x2639\x2641\x2642 tilde operator = varies with = similar to ≅\x2643\x2644\x2644\x2646\x2647 approximately equal to ≈\x2648\x2649\x2649\x2651\x2652 almost equal to = asymptotic to ≠\x2653\x2654\x2654\x2656\x2657 not equal to ≡\x2658\x2659\x2659\x2661\x2662 identical to ≤\x2663\x2664\x2664\x2666\x2667 less-than or equal to ≥\x2668\x2669\x2669\x2671\x2672 greater-than or equal to ⊂\x2673\x2674\x2674\x2676\x2677 subset of ⊃\x2678\x2679\x2679\x2681\x2682 superset of ⊄\x2683\x2684\x2684\x2686\x2687 not a subset of ⊆\x2688\x2689\x2689\x2691\x2692 subset of or equal to ⊇\x2693\x2694\x2694\x2696\x2697 superset of or equal to ⊕\x2698\x2699\x2699&01&02 circled plus = direct sum ⊗&03&04&04&06&07 circled times = vector product ⊥&08&09&09&11&12 up tack = orthogonal to = perpendicular ⋅&13&14&14&16&17 dot operator ⌈&18&19&19&21&22 left ceiling = apl upstile ⌉&23&24&24&26&27 right ceiling ⌊&28&29&29&31&32 left floor = apl downstile ⌋&33&34&34&36&37 right floor ⟨&38&39&40&41&42 left-pointing angle bracket = bra ⟩&43&44&45&46&47 right-pointing angle bracket = ket ◊&48&49&49&51&52 lozenge ♠&53&54&54&56&57 black spade suit ♣&58&59&59&61&62 black club suit = shamrock ♥&63&64&64&66&67 black heart suit = valentine ♦&68&69&69&71&72 black diamond suit

Ký hiệu nào là ký tự đặc biệt?

Ký tự đặc biệt là ký tự không phải là ký tự chữ cái hoặc số. Dấu chấm câu và các ký hiệu khác là ví dụ về các ký tự đặc biệt. Không giống như các ký tự chữ và số, các ký tự đặc biệt có thể có nhiều công dụng.

Làm cách nào để kiểm tra các ký tự đặc biệt trong JavaScript?

Nếu một chuỗi chứa bất kỳ số hoặc ký tự đặc biệt nào, nó có thể được kiểm tra bằng cách sử dụng biểu thức chính quy, còn được gọi là mẫu biểu thức chính quy, được chuyển vào “test()”. If a single special character and a number are found in a string, it returns “true” or “false”. Also, note that the test() method is a case-sensitive method.

Các ký tự đặc biệt trong chuỗi là gì?

Các chuỗi ký tự đặc biệt sau được chấp nhận trong chuỗi văn bản. .
\n (ký tự dòng mới)
\t (ký tự tab)
\r (ký tự xuống dòng)
\f (ký tự xuống dòng)
\' (dấu nháy đơn)
\" (dấu ngoặc kép)
\\ (dấu gạch chéo ngược)