1 <?php
2 
3 /**
4  * UTF-8 array of common special characters
5  *
6  * This array should contain all special characters (not a letter or digit)
7  * defined in the various local charsets - it's not a complete list of non-alphanum
8  * characters in UTF-8. It's not perfect but should match most cases of special
9  * chars.
10  *
11  * The controlchars 0x00 to 0x19 are _not_ included in this array. The space 0x20 is!
12  * These chars are _not_ in the array either:  _ (0x5f), : 0x3a, . 0x2e, - 0x2d, * 0x2a
13  *
14  * @author Andreas Gohr <andi@splitbrain.org>
15  * @see    \dokuwiki\Utf8\Clean::stripspecials()
16  */
17 
18 return [
19     0x1a, // 
20     0x1b, // 
21     0x1c, // 
22     0x1d, // 
23     0x1e, // 
24     0x1f, // 
25     0x20, // <space>
26     0x21, // !
27     0x22, // "
28     0x23, // #
29     0x24, // $
30     0x25, // %
31     0x26, // &
32     0x27, // '
33     0x28, // (
34     0x29, // )
35     0x2b, // +
36     0x2c, // ,
37     0x2f, // /
38     0x3b, // ;
39     0x3c, // <
40     0x3d, // =
41     0x3e, // >
42     0x3f, // ?
43     0x40, // @
44     0x5b, // [
45     0x5c, // \
46     0x5d, // ]
47     0x5e, // ^
48     0x60, // `
49     0x7b, // {
50     0x7c, // |
51     0x7d, // }
52     0x7e, // ~
53     0x7f, // 
54     0x80, // €
55     0x81, // 
56     0x82, // ‚
57     0x83, // ƒ
58     0x84, // „
59     0x85, // …
60     0x86, // †
61     0x87, // ‡
62     0x88, // ˆ
63     0x89, // ‰
64     0x8a, // Š
65     0x8b, // ‹
66     0x8c, // Œ
67     0x8d, // 
68     0x8e, // Ž
69     0x8f, // 
70     0x90, // 
71     0x91, // ‘
72     0x92, // ’
73     0x93, // “
74     0x94, // ”
75     0x95, // •
76     0x96, // –
77     0x97, // —
78     0x98, // ˜
79     0x99, // ™
80     0x9a, // š
81     0x9b, // ›
82     0x9c, // œ
83     0x9d, // 
84     0x9e, // ž
85     0x9f, // Ÿ
86     0xa0, //  
87     0xa1, // ¡
88     0xa2, // ¢
89     0xa3, // £
90     0xa4, // ¤
91     0xa5, // ¥
92     0xa6, // ¦
93     0xa7, // §
94     0xa8, // ¨
95     0xa9, // ©
96     0xaa, // ª
97     0xab, // «
98     0xac, // ¬
99     0xad, // ­
100     0xae, // ®
101     0xaf, // ¯
102     0xb0, // °
103     0xb1, // ±
104     0xb2, // ²
105     0xb3, // ³
106     0xb4, // ´
107     0xb5, // µ
108     0xb6, // ¶
109     0xb7, // ·
110     0xb8, // ¸
111     0xb9, // ¹
112     0xba, // º
113     0xbb, // »
114     0xbc, // ¼
115     0xbd, // ½
116     0xbe, // ¾
117     0xbf, // ¿
118     0xd7, // ×
119     0xf7, // ÷
120     0x2c7, // ˇ
121     0x2d8, // ˘
122     0x2d9, // ˙
123     0x2da, // ˚
124     0x2db, // ˛
125     0x2dc, // ˜
126     0x2dd, // ˝
127     0x300, // ̀
128     0x301, // ́
129     0x303, // ̃
130     0x309, // ̉
131     0x323, // ̣
132     0x384, // ΄
133     0x385, // ΅
134     0x387, // ·
135     0x5b0, // ְ
136     0x5b1, // ֱ
137     0x5b2, // ֲ
138     0x5b3, // ֳ
139     0x5b4, // ִ
140     0x5b5, // ֵ
141     0x5b6, // ֶ
142     0x5b7, // ַ
143     0x5b8, // ָ
144     0x5b9, // ֹ
145     0x5bb, // ֻ
146     0x5bc, // ּ
147     0x5bd, // ֽ
148     0x5be, // ־
149     0x5bf, // ֿ
150     0x5c0, // ׀
151     0x5c1, // ׁ
152     0x5c2, // ׂ
153     0x5c3, // ׃
154     0x5f3, // ׳
155     0x5f4, // ״
156     0x60c, // ،
157     0x61b, // ؛
158     0x61f, // ؟
159     0x640, // ـ
160     0x64b, // ً
161     0x64c, // ٌ
162     0x64d, // ٍ
163     0x64e, // َ
164     0x64f, // ُ
165     0x650, // ِ
166     0x651, // ّ
167     0x652, // ْ
168     0x66a, // ٪
169     0xe3f, // ฿
170     0x200c, // ‌
171     0x200d, // ‍
172     0x200e, // ‎
173     0x200f, // ‏
174     0x2013, // –
175     0x2014, // —
176     0x2015, // ―
177     0x2017, // ‗
178     0x2018, // ‘
179     0x2019, // ’
180     0x201a, // ‚
181     0x201c, // “
182     0x201d, // ”
183     0x201e, // „
184     0x2020, // †
185     0x2021, // ‡
186     0x2022, // •
187     0x2026, // …
188     0x2030, // ‰
189     0x2032, // ′
190     0x2033, // ″
191     0x2039, // ‹
192     0x203a, // ›
193     0x2044, // ⁄
194     0x20a7, // ₧
195     0x20aa, // ₪
196     0x20ab, // ₫
197     0x20ac, // €
198     0x2116, // №
199     0x2118, // ℘
200     0x2122, // ™
201     0x2126, // Ω
202     0x2135, // ℵ
203     0x2190, // ←
204     0x2191, // ↑
205     0x2192, // →
206     0x2193, // ↓
207     0x2194, // ↔
208     0x2195, // ↕
209     0x21b5, // ↵
210     0x21d0, // ⇐
211     0x21d1, // ⇑
212     0x21d2, // ⇒
213     0x21d3, // ⇓
214     0x21d4, // ⇔
215     0x2200, // ∀
216     0x2202, // ∂
217     0x2203, // ∃
218     0x2205, // ∅
219     0x2206, // ∆
220     0x2207, // ∇
221     0x2208, // ∈
222     0x2209, // ∉
223     0x220b, // ∋
224     0x220f, // ∏
225     0x2211, // ∑
226     0x2212, // −
227     0x2215, // ∕
228     0x2217, // ∗
229     0x2219, // ∙
230     0x221a, // √
231     0x221d, // ∝
232     0x221e, // ∞
233     0x2220, // ∠
234     0x2227, // ∧
235     0x2228, // ∨
236     0x2229, // ∩
237     0x222a, // ∪
238     0x222b, // ∫
239     0x2234, // ∴
240     0x223c, // ∼
241     0x2245, // ≅
242     0x2248, // ≈
243     0x2260, // ≠
244     0x2261, // ≡
245     0x2264, // ≤
246     0x2265, // ≥
247     0x2282, // ⊂
248     0x2283, // ⊃
249     0x2284, // ⊄
250     0x2286, // ⊆
251     0x2287, // ⊇
252     0x2295, // ⊕
253     0x2297, // ⊗
254     0x22a5, // ⊥
255     0x22c5, // ⋅
256     0x2310, // ⌐
257     0x2320, // ⌠
258     0x2321, // ⌡
259     0x2329, // 〈
260     0x232a, // 〉
261     0x2469, // ⑩
262     0x2500, // ─
263     0x2502, // │
264     0x250c, // ┌
265     0x2510, // ┐
266     0x2514, // └
267     0x2518, // ┘
268     0x251c, // ├
269     0x2524, // ┤
270     0x252c, // ┬
271     0x2534, // ┴
272     0x253c, // ┼
273     0x2550, // ═
274     0x2551, // ║
275     0x2552, // ╒
276     0x2553, // ╓
277     0x2554, // ╔
278     0x2555, // ╕
279     0x2556, // ╖
280     0x2557, // ╗
281     0x2558, // ╘
282     0x2559, // ╙
283     0x255a, // ╚
284     0x255b, // ╛
285     0x255c, // ╜
286     0x255d, // ╝
287     0x255e, // ╞
288     0x255f, // ╟
289     0x2560, // ╠
290     0x2561, // ╡
291     0x2562, // ╢
292     0x2563, // ╣
293     0x2564, // ╤
294     0x2565, // ╥
295     0x2566, // ╦
296     0x2567, // ╧
297     0x2568, // ╨
298     0x2569, // ╩
299     0x256a, // ╪
300     0x256b, // ╫
301     0x256c, // ╬
302     0x2580, // ▀
303     0x2584, // ▄
304     0x2588, // █
305     0x258c, // ▌
306     0x2590, // ▐
307     0x2591, // ░
308     0x2592, // ▒
309     0x2593, // ▓
310     0x25a0, // ■
311     0x25b2, // ▲
312     0x25bc, // ▼
313     0x25c6, // ◆
314     0x25ca, // ◊
315     0x25cf, // ●
316     0x25d7, // ◗
317     0x2605, // ★
318     0x260e, // ☎
319     0x261b, // ☛
320     0x261e, // ☞
321     0x2660, // ♠
322     0x2663, // ♣
323     0x2665, // ♥
324     0x2666, // ♦
325     0x2701, // ✁
326     0x2702, // ✂
327     0x2703, // ✃
328     0x2704, // ✄
329     0x2706, // ✆
330     0x2707, // ✇
331     0x2708, // ✈
332     0x2709, // ✉
333     0x270c, // ✌
334     0x270d, // ✍
335     0x270e, // ✎
336     0x270f, // ✏
337     0x2710, // ✐
338     0x2711, // ✑
339     0x2712, // ✒
340     0x2713, // ✓
341     0x2714, // ✔
342     0x2715, // ✕
343     0x2716, // ✖
344     0x2717, // ✗
345     0x2718, // ✘
346     0x2719, // ✙
347     0x271a, // ✚
348     0x271b, // ✛
349     0x271c, // ✜
350     0x271d, // ✝
351     0x271e, // ✞
352     0x271f, // ✟
353     0x2720, // ✠
354     0x2721, // ✡
355     0x2722, // ✢
356     0x2723, // ✣
357     0x2724, // ✤
358     0x2725, // ✥
359     0x2726, // ✦
360     0x2727, // ✧
361     0x2729, // ✩
362     0x272a, // ✪
363     0x272b, // ✫
364     0x272c, // ✬
365     0x272d, // ✭
366     0x272e, // ✮
367     0x272f, // ✯
368     0x2730, // ✰
369     0x2731, // ✱
370     0x2732, // ✲
371     0x2733, // ✳
372     0x2734, // ✴
373     0x2735, // ✵
374     0x2736, // ✶
375     0x2737, // ✷
376     0x2738, // ✸
377     0x2739, // ✹
378     0x273a, // ✺
379     0x273b, // ✻
380     0x273c, // ✼
381     0x273d, // ✽
382     0x273e, // ✾
383     0x273f, // ✿
384     0x2740, // ❀
385     0x2741, // ❁
386     0x2742, // ❂
387     0x2743, // ❃
388     0x2744, // ❄
389     0x2745, // ❅
390     0x2746, // ❆
391     0x2747, // ❇
392     0x2748, // ❈
393     0x2749, // ❉
394     0x274a, // ❊
395     0x274b, // ❋
396     0x274d, // ❍
397     0x274f, // ❏
398     0x2750, // ❐
399     0x2751, // ❑
400     0x2752, // ❒
401     0x2756, // ❖
402     0x2758, // ❘
403     0x2759, // ❙
404     0x275a, // ❚
405     0x275b, // ❛
406     0x275c, // ❜
407     0x275d, // ❝
408     0x275e, // ❞
409     0x2761, // ❡
410     0x2762, // ❢
411     0x2763, // ❣
412     0x2764, // ❤
413     0x2765, // ❥
414     0x2766, // ❦
415     0x2767, // ❧
416     0x277f, // ❿
417     0x2789, // ➉
418     0x2793, // ➓
419     0x2794, // ➔
420     0x2798, // ➘
421     0x2799, // ➙
422     0x279a, // ➚
423     0x279b, // ➛
424     0x279c, // ➜
425     0x279d, // ➝
426     0x279e, // ➞
427     0x279f, // ➟
428     0x27a0, // ➠
429     0x27a1, // ➡
430     0x27a2, // ➢
431     0x27a3, // ➣
432     0x27a4, // ➤
433     0x27a5, // ➥
434     0x27a6, // ➦
435     0x27a7, // ➧
436     0x27a8, // ➨
437     0x27a9, // ➩
438     0x27aa, // ➪
439     0x27ab, // ➫
440     0x27ac, // ➬
441     0x27ad, // ➭
442     0x27ae, // ➮
443     0x27af, // ➯
444     0x27b1, // ➱
445     0x27b2, // ➲
446     0x27b3, // ➳
447     0x27b4, // ➴
448     0x27b5, // ➵
449     0x27b6, // ➶
450     0x27b7, // ➷
451     0x27b8, // ➸
452     0x27b9, // ➹
453     0x27ba, // ➺
454     0x27bb, // ➻
455     0x27bc, // ➼
456     0x27bd, // ➽
457     0x27be, // ➾
458     0x3000, //  
459     0x3001, // 、
460     0x3002, // 。
461     0x3003, // 〃
462     0x3008, // 〈
463     0x3009, // 〉
464     0x300a, // 《
465     0x300b, // 》
466     0x300c, // 「
467     0x300d, // 」
468     0x300e, // 『
469     0x300f, // 』
470     0x3010, // 【
471     0x3011, // 】
472     0x3012, // 〒
473     0x3014, // 〔
474     0x3015, // 〕
475     0x3016, // 〖
476     0x3017, // 〗
477     0x3018, // 〘
478     0x3019, // 〙
479     0x301a, // 〚
480     0x301b, // 〛
481     0x3036, // 〶
482     0xf6d9, // 
483     0xf6da, // 
484     0xf6db, // 
485     0xf8d7, // 
486     0xf8d8, // 
487     0xf8d9, // 
488     0xf8da, // 
489     0xf8db, // 
490     0xf8dc, // 
491     0xf8dd, // 
492     0xf8de, // 
493     0xf8df, // 
494     0xf8e0, // 
495     0xf8e1, // 
496     0xf8e2, // 
497     0xf8e3, // 
498     0xf8e4, // 
499     0xf8e5, // 
500     0xf8e6, // 
501     0xf8e7, // 
502     0xf8e8, // 
503     0xf8e9, // 
504     0xf8ea, // 
505     0xf8eb, // 
506     0xf8ec, // 
507     0xf8ed, // 
508     0xf8ee, // 
509     0xf8ef, // 
510     0xf8f0, // 
511     0xf8f1, // 
512     0xf8f2, // 
513     0xf8f3, // 
514     0xf8f4, // 
515     0xf8f5, // 
516     0xf8f6, // 
517     0xf8f7, // 
518     0xf8f8, // 
519     0xf8f9, // 
520     0xf8fa, // 
521     0xf8fb, // 
522     0xf8fc, // 
523     0xf8fd, // 
524     0xf8fe, // 
525     0xfe7c, // ﹼ
526     0xfe7d, // ﹽ
527     0xff01, // !
528     0xff02, // "
529     0xff03, // #
530     0xff04, // $
531     0xff05, // %
532     0xff06, // &
533     0xff07, // '
534     0xff08, // (
535     0xff09, // )
536     0xff09, // )
537     0xff0a, // *
538     0xff0b, // +
539     0xff0c, // ,
540     0xff0d, // -
541     0xff0e, // .
542     0xff0f, // /
543     0xff1a, // :
544     0xff1b, // ;
545     0xff1c, // <
546     0xff1d, // =
547     0xff1e, // >
548     0xff1f, // ?
549     0xff20, // @
550     0xff3b, // [
551     0xff3c, // \
552     0xff3d, // ]
553     0xff3e, // ^
554     0xff40, // `
555     0xff5b, // {
556     0xff5c, // |
557     0xff5d, // }
558     0xff5e, // ~
559     0xff5f, // ⦅
560     0xff60, // ⦆
561     0xff61, // 。
562     0xff62, // 「
563     0xff63, // 」
564     0xff64, // 、
565     0xff65, // ・
566     0xffe0, // ¢
567     0xffe1, // £
568     0xffe2, // ¬
569     0xffe3, //  ̄
570     0xffe4, // ¦
571     0xffe5, // ¥
572     0xffe6, // ₩
573     0xffe8, // │
574     0xffe9, // ←
575     0xffea, // ↑
576     0xffeb, // →
577     0xffec, // ↓
578     0xffed, // ■
579     0xffee, // ○
580     0x1d6fc, // ��
581     0x1d6fd, // ��
582     0x1d6fe, // ��
583     0x1d6ff, // ��
584     0x1d700, // ��
585     0x1d701, // ��
586     0x1d702, // ��
587     0x1d703, // ��
588     0x1d704, // ��
589     0x1d705, // ��
590     0x1d706, // ��
591     0x1d707, // ��
592     0x1d708, // ��
593     0x1d709, // ��
594     0x1d70a, // ��
595     0x1d70b, // ��
596     0x1d70c, // ��
597     0x1d70d, // ��
598     0x1d70e, // ��
599     0x1d70f, // ��
600     0x1d710, // ��
601     0x1d711, // ��
602     0x1d712, // ��
603     0x1d713, // ��
604     0x1d714, // ��
605     0x1d715, // ��
606     0x1d716, // ��
607     0x1d717, // ��
608     0x1d718, // ��
609     0x1d719, // ��
610     0x1d71a, // ��
611     0x1d71b, // ��
612     0xc2a0, // 슠
613     0xe28087, //
614     0xe280af, //
615     0xe281a0, //
616     0xefbbbf, //
617 ];
618