summaryrefslogtreecommitdiff
path: root/ext/pcre/tests/preg_split_basic.phpt
blob: 75f5beeddcf6ebeb7b6c81a97a437fa567d5fcd8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
--TEST--
Test preg_split() function : basic functionality 
--INI--
--FILE--
<?php
/*
* proto array preg_split(string pattern, string subject [, int limit [, int flags]])
* Function is implemented in ext/pcre/php_pcre.c
*/
$string = 'this is a_list: value1, Test__, string; Hello, world!_(parentheses)';
var_dump(preg_split('/[:,;\(\)]/', $string, -1, PREG_SPLIT_NO_EMPTY)); //parts of $string seperated by : , ; ( or ) are put into an array.
var_dump(preg_split('/:\s*(\w*,*\s*)+;/', $string)); //all text between : and ; is removed
var_dump(preg_split('/(\(|\))/', $string, -1, PREG_SPLIT_DELIM_CAPTURE|PREG_SPLIT_NO_EMPTY)); //all text before (parentheses) is put into first element, ( into second, "parentheses" into third and ) into fourth.
var_dump(preg_split('/NAME/i', $string)); //tries to find NAME regardless of case in $string (can't split it so just returns how string as first element)
var_dump(preg_split('/\w/', $string, -1, PREG_SPLIT_NO_EMPTY)); //every character (including whitespace) is put into an array element

?>
--EXPECT--
array(7) {
  [0]=>
  string(14) "this is a_list"
  [1]=>
  string(7) " value1"
  [2]=>
  string(7) " Test__"
  [3]=>
  string(7) " string"
  [4]=>
  string(6) " Hello"
  [5]=>
  string(8) " world!_"
  [6]=>
  string(11) "parentheses"
}
array(2) {
  [0]=>
  string(14) "this is a_list"
  [1]=>
  string(28) " Hello, world!_(parentheses)"
}
array(4) {
  [0]=>
  string(54) "this is a_list: value1, Test__, string; Hello, world!_"
  [1]=>
  string(1) "("
  [2]=>
  string(11) "parentheses"
  [3]=>
  string(1) ")"
}
array(1) {
  [0]=>
  string(67) "this is a_list: value1, Test__, string; Hello, world!_(parentheses)"
}
array(10) {
  [0]=>
  string(1) " "
  [1]=>
  string(1) " "
  [2]=>
  string(2) ": "
  [3]=>
  string(2) ", "
  [4]=>
  string(2) ", "
  [5]=>
  string(2) "; "
  [6]=>
  string(2) ", "
  [7]=>
  string(1) "!"
  [8]=>
  string(1) "("
  [9]=>
  string(1) ")"
}
--UEXPECTF--
array(7) {
  [0]=>
  unicode(14) "this is a_list"
  [1]=>
  unicode(7) " value1"
  [2]=>
  unicode(7) " Test__"
  [3]=>
  unicode(7) " string"
  [4]=>
  unicode(6) " Hello"
  [5]=>
  unicode(8) " world!_"
  [6]=>
  unicode(11) "parentheses"
}
array(2) {
  [0]=>
  unicode(14) "this is a_list"
  [1]=>
  unicode(28) " Hello, world!_(parentheses)"
}
array(4) {
  [0]=>
  unicode(54) "this is a_list: value1, Test__, string; Hello, world!_"
  [1]=>
  unicode(1) "("
  [2]=>
  unicode(11) "parentheses"
  [3]=>
  unicode(1) ")"
}
array(1) {
  [0]=>
  unicode(67) "this is a_list: value1, Test__, string; Hello, world!_(parentheses)"
}
array(10) {
  [0]=>
  unicode(1) " "
  [1]=>
  unicode(1) " "
  [2]=>
  unicode(2) ": "
  [3]=>
  unicode(2) ", "
  [4]=>
  unicode(2) ", "
  [5]=>
  unicode(2) "; "
  [6]=>
  unicode(2) ", "
  [7]=>
  unicode(1) "!"
  [8]=>
  unicode(1) "("
  [9]=>
  unicode(1) ")"
}