/vendor/pcre/testdata/testinput2

http://github.com/feyeleanor/RubyGoLightly · #! · 2729 lines · 1875 code · 854 blank · 0 comment · 0 complexity · 4eb7b5a71e190588a5d265f361e337d6 MD5 · raw file

  1. /(a)b|/I
  2. /abc/I
  3. abc
  4. defabc
  5. \Aabc
  6. *** Failers
  7. \Adefabc
  8. ABC
  9. /^abc/I
  10. abc
  11. \Aabc
  12. *** Failers
  13. defabc
  14. \Adefabc
  15. /a+bc/I
  16. /a*bc/I
  17. /a{3}bc/I
  18. /(abc|a+z)/I
  19. /^abc$/I
  20. abc
  21. *** Failers
  22. def\nabc
  23. /ab\idef/X
  24. /(?X)ab\idef/X
  25. /x{5,4}/
  26. /z{65536}/
  27. /[abcd/
  28. /(?X)[\B]/
  29. /[z-a]/
  30. /^*/
  31. /(abc/
  32. /(?# abc/
  33. /(?z)abc/
  34. /.*b/I
  35. /.*?b/I
  36. /cat|dog|elephant/I
  37. this sentence eventually mentions a cat
  38. this sentences rambles on and on for a while and then reaches elephant
  39. /cat|dog|elephant/IS
  40. this sentence eventually mentions a cat
  41. this sentences rambles on and on for a while and then reaches elephant
  42. /cat|dog|elephant/IiS
  43. this sentence eventually mentions a CAT cat
  44. this sentences rambles on and on for a while to elephant ElePhant
  45. /a|[bcd]/IS
  46. /(a|[^\dZ])/IS
  47. /(a|b)*[\s]/IS
  48. /(ab\2)/
  49. /{4,5}abc/
  50. /(a)(b)(c)\2/I
  51. abcb
  52. \O0abcb
  53. \O3abcb
  54. \O6abcb
  55. \O9abcb
  56. \O12abcb
  57. /(a)bc|(a)(b)\2/I
  58. abc
  59. \O0abc
  60. \O3abc
  61. \O6abc
  62. aba
  63. \O0aba
  64. \O3aba
  65. \O6aba
  66. \O9aba
  67. \O12aba
  68. /abc$/IE
  69. abc
  70. *** Failers
  71. abc\n
  72. abc\ndef
  73. /(a)(b)(c)(d)(e)\6/
  74. /the quick brown fox/I
  75. the quick brown fox
  76. this is a line with the quick brown fox
  77. /the quick brown fox/IA
  78. the quick brown fox
  79. *** Failers
  80. this is a line with the quick brown fox
  81. /ab(?z)cd/
  82. /^abc|def/I
  83. abcdef
  84. abcdef\B
  85. /.*((abc)$|(def))/I
  86. defabc
  87. \Zdefabc
  88. /abc/IP
  89. abc
  90. *** Failers
  91. /^abc|def/IP
  92. abcdef
  93. abcdef\B
  94. /.*((abc)$|(def))/IP
  95. defabc
  96. \Zdefabc
  97. /the quick brown fox/IP
  98. the quick brown fox
  99. *** Failers
  100. The Quick Brown Fox
  101. /the quick brown fox/IPi
  102. the quick brown fox
  103. The Quick Brown Fox
  104. /abc.def/IP
  105. *** Failers
  106. abc\ndef
  107. /abc$/IP
  108. abc
  109. abc\n
  110. /(abc)\2/IP
  111. /(abc\1)/IP
  112. abc
  113. /)/
  114. /a[]b/
  115. /[^aeiou ]{3,}/I
  116. co-processors, and for
  117. /<.*>/I
  118. abc<def>ghi<klm>nop
  119. /<.*?>/I
  120. abc<def>ghi<klm>nop
  121. /<.*>/IU
  122. abc<def>ghi<klm>nop
  123. /(?U)<.*>/I
  124. abc<def>ghi<klm>nop
  125. /<.*?>/IU
  126. abc<def>ghi<klm>nop
  127. /={3,}/IU
  128. abc========def
  129. /(?U)={3,}?/I
  130. abc========def
  131. /(?<!bar|cattle)foo/I
  132. foo
  133. catfoo
  134. *** Failers
  135. the barfoo
  136. and cattlefoo
  137. /(?<=a+)b/
  138. /(?<=aaa|b{0,3})b/
  139. /(?<!(foo)a\1)bar/
  140. /(?i)abc/I
  141. /(a|(?m)a)/I
  142. /(?i)^1234/I
  143. /(^b|(?i)^d)/I
  144. /(?s).*/I
  145. /[abcd]/IS
  146. /(?i)[abcd]/IS
  147. /(?m)[xy]|(b|c)/IS
  148. /(^a|^b)/Im
  149. /(?i)(^a|^b)/Im
  150. /(a)(?(1)a|b|c)/
  151. /(?(?=a)a|b|c)/
  152. /(?(1a)/
  153. /(?(1a))/
  154. /(?(?i))/
  155. /(?(abc))/
  156. /(?(?<ab))/
  157. /((?s)blah)\s+\1/I
  158. /((?i)blah)\s+\1/I
  159. /((?i)b)/IDZS
  160. /(a*b|(?i:c*(?-i)d))/IS
  161. /a$/I
  162. a
  163. a\n
  164. *** Failers
  165. \Za
  166. \Za\n
  167. /a$/Im
  168. a
  169. a\n
  170. \Za\n
  171. *** Failers
  172. \Za
  173. /\Aabc/Im
  174. /^abc/Im
  175. /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I
  176. aaaaabbbbbcccccdef
  177. /(?<=foo)[ab]/IS
  178. /(?<!foo)(alpha|omega)/IS
  179. /(?!alphabet)[ab]/IS
  180. /(?<=foo\n)^bar/Im
  181. foo\nbarbar
  182. ***Failers
  183. rhubarb
  184. barbell
  185. abc\nbarton
  186. /^(?<=foo\n)bar/Im
  187. foo\nbarbar
  188. ***Failers
  189. rhubarb
  190. barbell
  191. abc\nbarton
  192. /(?>^abc)/Im
  193. abc
  194. def\nabc
  195. *** Failers
  196. defabc
  197. /(?<=ab(c+)d)ef/
  198. /(?<=ab(?<=c+)d)ef/
  199. /(?<=ab(c|de)f)g/
  200. /The next three are in testinput2 because they have variable length branches/
  201. /(?<=bullock|donkey)-cart/I
  202. the bullock-cart
  203. a donkey-cart race
  204. *** Failers
  205. cart
  206. horse-and-cart
  207. /(?<=ab(?i)x|y|z)/I
  208. /(?>.*)(?<=(abcd)|(xyz))/I
  209. alphabetabcd
  210. endingxyz
  211. /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/I
  212. abxyZZ
  213. abXyZZ
  214. ZZZ
  215. zZZ
  216. bZZ
  217. BZZ
  218. *** Failers
  219. ZZ
  220. abXYZZ
  221. zzz
  222. bzz
  223. /(?<!(foo)a)bar/I
  224. bar
  225. foobbar
  226. *** Failers
  227. fooabar
  228. /This one is here because Perl 5.005_02 doesn't fail it/I
  229. /^(a)?(?(1)a|b)+$/I
  230. *** Failers
  231. a
  232. /This one is here because I think Perl 5.005_02 gets the setting of $1 wrong/I
  233. /^(a\1?){4}$/I
  234. aaaaaa
  235. /These are syntax tests from Perl 5.005/I
  236. /a[b-a]/
  237. /a[]b/
  238. /a[/
  239. /*a/
  240. /(*)b/
  241. /abc)/
  242. /(abc/
  243. /a**/
  244. /)(/
  245. /\1/
  246. /\2/
  247. /(a)|\2/
  248. /a[b-a]/Ii
  249. /a[]b/Ii
  250. /a[/Ii
  251. /*a/Ii
  252. /(*)b/Ii
  253. /abc)/Ii
  254. /(abc/Ii
  255. /a**/Ii
  256. /)(/Ii
  257. /:(?:/
  258. /(?<%)b/
  259. /a(?{)b/
  260. /a(?{{})b/
  261. /a(?{}})b/
  262. /a(?{"{"})b/
  263. /a(?{"{"}})b/
  264. /(?(1?)a|b)/
  265. /[a[:xyz:/
  266. /(?<=x+)y/
  267. /a{37,17}/
  268. /abc/\
  269. /abc/\P
  270. /abc/\i
  271. /(a)bc(d)/I
  272. abcd
  273. abcd\C2
  274. abcd\C5
  275. /(.{20})/I
  276. abcdefghijklmnopqrstuvwxyz
  277. abcdefghijklmnopqrstuvwxyz\C1
  278. abcdefghijklmnopqrstuvwxyz\G1
  279. /(.{15})/I
  280. abcdefghijklmnopqrstuvwxyz
  281. abcdefghijklmnopqrstuvwxyz\C1\G1
  282. /(.{16})/I
  283. abcdefghijklmnopqrstuvwxyz
  284. abcdefghijklmnopqrstuvwxyz\C1\G1\L
  285. /^(a|(bc))de(f)/I
  286. adef\G1\G2\G3\G4\L
  287. bcdef\G1\G2\G3\G4\L
  288. adefghijk\C0
  289. /^abc\00def/I
  290. abc\00def\L\C0
  291. /word ((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+
  292. )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+
  293. )?)?)?)?)?)?)?)?)?otherword/I
  294. /.*X/IDZ
  295. /.*X/IDZs
  296. /(.*X|^B)/IDZ
  297. /(.*X|^B)/IDZs
  298. /(?s)(.*X|^B)/IDZ
  299. /(?s:.*X|^B)/IDZ
  300. /\Biss\B/I+
  301. Mississippi
  302. /\Biss\B/I+P
  303. Mississippi
  304. /iss/IG+
  305. Mississippi
  306. /\Biss\B/IG+
  307. Mississippi
  308. /\Biss\B/Ig+
  309. Mississippi
  310. *** Failers
  311. Mississippi\A
  312. /(?<=[Ms])iss/Ig+
  313. Mississippi
  314. /(?<=[Ms])iss/IG+
  315. Mississippi
  316. /^iss/Ig+
  317. ississippi
  318. /.*iss/Ig+
  319. abciss\nxyzisspqr
  320. /.i./I+g
  321. Mississippi
  322. Mississippi\A
  323. Missouri river
  324. Missouri river\A
  325. /^.is/I+g
  326. Mississippi
  327. /^ab\n/Ig+
  328. ab\nab\ncd
  329. /^ab\n/Img+
  330. ab\nab\ncd
  331. /abc/I
  332. /abc|bac/I
  333. /(abc|bac)/I
  334. /(abc|(c|dc))/I
  335. /(abc|(d|de)c)/I
  336. /a*/I
  337. /a+/I
  338. /(baa|a+)/I
  339. /a{0,3}/I
  340. /baa{3,}/I
  341. /"([^\\"]+|\\.)*"/I
  342. /(abc|ab[cd])/I
  343. /(a|.)/I
  344. /a|ba|\w/I
  345. /abc(?=pqr)/I
  346. /...(?<=abc)/I
  347. /abc(?!pqr)/I
  348. /ab./I
  349. /ab[xyz]/I
  350. /abc*/I
  351. /ab.c*/I
  352. /a.c*/I
  353. /.c*/I
  354. /ac*/I
  355. /(a.c*|b.c*)/I
  356. /a.c*|aba/I
  357. /.+a/I
  358. /(?=abcda)a.*/I
  359. /(?=a)a.*/I
  360. /a(b)*/I
  361. /a\d*/I
  362. /ab\d*/I
  363. /a(\d)*/I
  364. /abcde{0,0}/I
  365. /ab\d+/I
  366. /a(?(1)b)(.)/I
  367. /a(?(1)bag|big)(.)/I
  368. /a(?(1)bag|big)*(.)/I
  369. /a(?(1)bag|big)+(.)/I
  370. /a(?(1)b..|b..)(.)/I
  371. /ab\d{0}e/I
  372. /a?b?/I
  373. a
  374. b
  375. ab
  376. \
  377. *** Failers
  378. \N
  379. /|-/I
  380. abcd
  381. -abc
  382. \Nab-c
  383. *** Failers
  384. \Nabc
  385. /a*(b+)(z)(z)/IP
  386. aaaabbbbzzzz
  387. aaaabbbbzzzz\O0
  388. aaaabbbbzzzz\O1
  389. aaaabbbbzzzz\O2
  390. aaaabbbbzzzz\O3
  391. aaaabbbbzzzz\O4
  392. aaaabbbbzzzz\O5
  393. /^.?abcd/IS
  394. /\( # ( at start
  395. (?: # Non-capturing bracket
  396. (?>[^()]+) # Either a sequence of non-brackets (no backtracking)
  397. | # Or
  398. (?R) # Recurse - i.e. nested bracketed string
  399. )* # Zero or more contents
  400. \) # Closing )
  401. /Ix
  402. (abcd)
  403. (abcd)xyz
  404. xyz(abcd)
  405. (ab(xy)cd)pqr
  406. (ab(xycd)pqr
  407. () abc ()
  408. 12(abcde(fsh)xyz(foo(bar))lmno)89
  409. *** Failers
  410. abcd
  411. abcd)
  412. (abcd
  413. /\( ( (?>[^()]+) | (?R) )* \) /Ixg
  414. (ab(xy)cd)pqr
  415. 1(abcd)(x(y)z)pqr
  416. /\( (?: (?>[^()]+) | (?R) ) \) /Ix
  417. (abcd)
  418. (ab(xy)cd)
  419. (a(b(c)d)e)
  420. ((ab))
  421. *** Failers
  422. ()
  423. /\( (?: (?>[^()]+) | (?R) )? \) /Ix
  424. ()
  425. 12(abcde(fsh)xyz(foo(bar))lmno)89
  426. /\( ( (?>[^()]+) | (?R) )* \) /Ix
  427. (ab(xy)cd)
  428. /\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix
  429. (ab(xy)cd)
  430. /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix
  431. (ab(xy)cd)
  432. (123ab(xy)cd)
  433. /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix
  434. (ab(xy)cd)
  435. (123ab(xy)cd)
  436. /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix
  437. (ab(xy)cd)
  438. /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix
  439. (abcd(xyz<p>qrs)123)
  440. /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix
  441. (ab(cd)ef)
  442. (ab(cd(ef)gh)ij)
  443. /^[[:alnum:]]/DZ
  444. /^[[:^alnum:]]/DZ
  445. /^[[:alpha:]]/DZ
  446. /^[[:^alpha:]]/DZ
  447. /[_[:alpha:]]/IS
  448. /^[[:ascii:]]/DZ
  449. /^[[:^ascii:]]/DZ
  450. /^[[:blank:]]/DZ
  451. /^[[:^blank:]]/DZ
  452. /[\n\x0b\x0c\x0d[:blank:]]/IS
  453. /^[[:cntrl:]]/DZ
  454. /^[[:digit:]]/DZ
  455. /^[[:graph:]]/DZ
  456. /^[[:lower:]]/DZ
  457. /^[[:print:]]/DZ
  458. /^[[:punct:]]/DZ
  459. /^[[:space:]]/DZ
  460. /^[[:upper:]]/DZ
  461. /^[[:xdigit:]]/DZ
  462. /^[[:word:]]/DZ
  463. /^[[:^cntrl:]]/DZ
  464. /^[12[:^digit:]]/DZ
  465. /^[[:^blank:]]/DZ
  466. /[01[:alpha:]%]/DZ
  467. /[[.ch.]]/I
  468. /[[=ch=]]/I
  469. /[[:rhubarb:]]/I
  470. /[[:upper:]]/Ii
  471. A
  472. a
  473. /[[:lower:]]/Ii
  474. A
  475. a
  476. /((?-i)[[:lower:]])[[:lower:]]/Ii
  477. ab
  478. aB
  479. *** Failers
  480. Ab
  481. AB
  482. /[\200-\110]/I
  483. /^(?(0)f|b)oo/I
  484. /This one's here because of the large output vector needed/I
  485. /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\w+)\s+(\270)/I
  486. \O900 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 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 ABC ABC
  487. /This one's here because Perl does this differently and PCRE can't at present/I
  488. /(main(O)?)+/I
  489. mainmain
  490. mainOmain
  491. /These are all cases where Perl does it differently (nested captures)/I
  492. /^(a(b)?)+$/I
  493. aba
  494. /^(aa(bb)?)+$/I
  495. aabbaa
  496. /^(aa|aa(bb))+$/I
  497. aabbaa
  498. /^(aa(bb)??)+$/I
  499. aabbaa
  500. /^(?:aa(bb)?)+$/I
  501. aabbaa
  502. /^(aa(b(b))?)+$/I
  503. aabbaa
  504. /^(?:aa(b(b))?)+$/I
  505. aabbaa
  506. /^(?:aa(b(?:b))?)+$/I
  507. aabbaa
  508. /^(?:aa(bb(?:b))?)+$/I
  509. aabbbaa
  510. /^(?:aa(b(?:bb))?)+$/I
  511. aabbbaa
  512. /^(?:aa(?:b(b))?)+$/I
  513. aabbaa
  514. /^(?:aa(?:b(bb))?)+$/I
  515. aabbbaa
  516. /^(aa(b(bb))?)+$/I
  517. aabbbaa
  518. /^(aa(bb(bb))?)+$/I
  519. aabbbbaa
  520. /--------------------------------------------------------------------/I
  521. /#/IxDZ
  522. /a#/IxDZ
  523. /[\s]/DZ
  524. /[\S]/DZ
  525. /a(?i)b/DZ
  526. ab
  527. aB
  528. *** Failers
  529. AB
  530. /(a(?i)b)/DZ
  531. ab
  532. aB
  533. *** Failers
  534. AB
  535. / (?i)abc/IxDZ
  536. /#this is a comment
  537. (?i)abc/IxDZ
  538. /123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
  539. /\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
  540. /\Q\E/DZ
  541. \
  542. /\Q\Ex/DZ
  543. / \Q\E/DZ
  544. /a\Q\E/DZ
  545. abc
  546. bca
  547. bac
  548. /a\Q\Eb/DZ
  549. abc
  550. /\Q\Eabc/DZ
  551. /x*+\w/DZ
  552. *** Failers
  553. xxxxx
  554. /x?+/DZ
  555. /x++/DZ
  556. /x{1,3}+/DZ
  557. /(x)*+/DZ
  558. /^(\w++|\s++)*$/I
  559. now is the time for all good men to come to the aid of the party
  560. *** Failers
  561. this is not a line with only words and spaces!
  562. /(\d++)(\w)/I
  563. 12345a
  564. *** Failers
  565. 12345+
  566. /a++b/I
  567. aaab
  568. /(a++b)/I
  569. aaab
  570. /(a++)b/I
  571. aaab
  572. /([^()]++|\([^()]*\))+/I
  573. ((abc(ade)ufh()()x
  574. /\(([^()]++|\([^()]+\))+\)/I
  575. (abc)
  576. (abc(def)xyz)
  577. *** Failers
  578. ((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
  579. /(abc){1,3}+/DZ
  580. /a+?+/I
  581. /a{2,3}?+b/I
  582. /(?U)a+?+/I
  583. /a{2,3}?+b/IU
  584. /x(?U)a++b/DZ
  585. xaaaab
  586. /(?U)xa++b/DZ
  587. xaaaab
  588. /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/DZ
  589. /^x(?U)a+b/DZ
  590. /^x(?U)(a+)b/DZ
  591. /[.x.]/I
  592. /[=x=]/I
  593. /[:x:]/I
  594. /\l/I
  595. /\L/I
  596. /\N{name}/I
  597. /\u/I
  598. /\U/I
  599. /[/I
  600. /[a-/I
  601. /[[:space:]/I
  602. /[\s]/IDZ
  603. /[[:space:]]/IDZ
  604. /[[:space:]abcde]/IDZ
  605. /< (?: (?(R) \d++ | [^<>]*+) | (?R)) * >/Ix
  606. <>
  607. <abcd>
  608. <abc <123> hij>
  609. <abc <def> hij>
  610. <abc<>def>
  611. <abc<>
  612. *** Failers
  613. <abc
  614. |8J\$WE\<\.rX\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|IDZ
  615. |\$\<\.X\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|IDZ
  616. /(.*)\d+\1/I
  617. /(.*)\d+/I
  618. /(.*)\d+\1/Is
  619. /(.*)\d+/Is
  620. /(.*(xyz))\d+\2/I
  621. /((.*))\d+\1/I
  622. abc123bc
  623. /a[b]/I
  624. /(?=a).*/I
  625. /(?=abc).xyz/IiI
  626. /(?=abc)(?i).xyz/I
  627. /(?=a)(?=b)/I
  628. /(?=.)a/I
  629. /((?=abcda)a)/I
  630. /((?=abcda)ab)/I
  631. /()a/I
  632. /(?(1)ab|ac)(.)/I
  633. /(?(1)abz|acz)(.)/I
  634. /(?(1)abz)(.)/I
  635. /(?(1)abz)(1)23/I
  636. /(a)+/I
  637. /(a){2,3}/I
  638. /(a)*/I
  639. /[a]/I
  640. /[ab]/I
  641. /[ab]/IS
  642. /[^a]/I
  643. /\d456/I
  644. /\d456/IS
  645. /a^b/I
  646. /^a/Im
  647. abcde
  648. xy\nabc
  649. *** Failers
  650. xyabc
  651. /c|abc/I
  652. /(?i)[ab]/IS
  653. /[ab](?i)cd/IS
  654. /abc(?C)def/I
  655. abcdef
  656. 1234abcdef
  657. *** Failers
  658. abcxyz
  659. abcxyzf
  660. /abc(?C)de(?C1)f/I
  661. 123abcdef
  662. /(?C1)\dabc(?C2)def/I
  663. 1234abcdef
  664. *** Failers
  665. abcdef
  666. /(?C255)ab/I
  667. /(?C256)ab/I
  668. /(?Cab)xx/I
  669. /(?C12vr)x/I
  670. /abc(?C)def/I
  671. *** Failers
  672. \x83\x0\x61bcdef
  673. /(abc)(?C)de(?C1)f/I
  674. 123abcdef
  675. 123abcdef\C+
  676. 123abcdef\C-
  677. *** Failers
  678. 123abcdef\C!1
  679. /(?C0)(abc(?C1))*/I
  680. abcabcabc
  681. abcabc\C!1!3
  682. *** Failers
  683. abcabcabc\C!1!3
  684. /(\d{3}(?C))*/I
  685. 123\C+
  686. 123456\C+
  687. 123456789\C+
  688. /((xyz)(?C)p|(?C1)xyzabc)/I
  689. xyzabc\C+
  690. /(X)((xyz)(?C)p|(?C1)xyzabc)/I
  691. Xxyzabc\C+
  692. /(?=(abc))(?C)abcdef/I
  693. abcdef\C+
  694. /(?!(abc)(?C1)d)(?C2)abcxyz/I
  695. abcxyz\C+
  696. /(?<=(abc)(?C))xyz/I
  697. abcxyz\C+
  698. /a(b+)(c*)(?C1)/I
  699. abbbbbccc\C*1
  700. /a(b+?)(c*?)(?C1)/I
  701. abbbbbccc\C*1
  702. /(?C)abc/I
  703. /(?C)^abc/I
  704. /(?C)a|b/IS
  705. /(?R)/I
  706. /(a|(?R))/I
  707. /(ab|(bc|(de|(?R))))/I
  708. /x(ab|(bc|(de|(?R))))/I
  709. xab
  710. xbc
  711. xde
  712. xxab
  713. xxxab
  714. *** Failers
  715. xyab
  716. /(ab|(bc|(de|(?1))))/I
  717. /x(ab|(bc|(de|(?1)x)x)x)/I
  718. /^([^()]|\((?1)*\))*$/I
  719. abc
  720. a(b)c
  721. a(b(c))d
  722. *** Failers)
  723. a(b(c)d
  724. /^>abc>([^()]|\((?1)*\))*<xyz<$/I
  725. >abc>123<xyz<
  726. >abc>1(2)3<xyz<
  727. >abc>(1(2)3)<xyz<
  728. /(a(?1)b)/DZ
  729. /(a(?1)+b)/DZ
  730. /^\W*(?:((.)\W*(?1)\W*\2|)|((.)\W*(?3)\W*\4|\W*.\W*))\W*$/Ii
  731. 1221
  732. Satan, oscillate my metallic sonatas!
  733. A man, a plan, a canal: Panama!
  734. Able was I ere I saw Elba.
  735. *** Failers
  736. The quick brown fox
  737. /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I
  738. 12
  739. (((2+2)*-3)-7)
  740. -12
  741. *** Failers
  742. ((2+2)*-3)-7)
  743. /^(x(y|(?1){2})z)/I
  744. xyz
  745. xxyzxyzz
  746. *** Failers
  747. xxyzz
  748. xxyzxyzxyzz
  749. /((< (?: (?(R) \d++ | [^<>]*+) | (?2)) * >))/Ix
  750. <>
  751. <abcd>
  752. <abc <123> hij>
  753. <abc <def> hij>
  754. <abc<>def>
  755. <abc<>
  756. *** Failers
  757. <abc
  758. /(?1)/I
  759. /((?2)(abc)/I
  760. /^(abc)def(?1)/I
  761. abcdefabc
  762. /^(a|b|c)=(?1)+/I
  763. a=a
  764. a=b
  765. a=bc
  766. /^(a|b|c)=((?1))+/I
  767. a=a
  768. a=b
  769. a=bc
  770. /a(?P<name1>b|c)d(?P<longername2>e)/DZ
  771. abde
  772. acde
  773. /(?:a(?P<c>c(?P<d>d)))(?P<a>a)/DZ
  774. /(?P<a>a)...(?P=a)bbb(?P>a)d/DZ
  775. /^\W*(?:(?P<one>(?P<two>.)\W*(?P>one)\W*(?P=two)|)|(?P<three>(?P<four>.)\W*(?P>three)\W*(?P=four)|\W*.\W*))\W*$/Ii
  776. 1221
  777. Satan, oscillate my metallic sonatas!
  778. A man, a plan, a canal: Panama!
  779. Able was I ere I saw Elba.
  780. *** Failers
  781. The quick brown fox
  782. /((?(R)a|b))\1(?1)?/I
  783. bb
  784. bbaa
  785. /(.*)a/Is
  786. /(.*)a\1/Is
  787. /(.*)a(b)\2/Is
  788. /((.*)a|(.*)b)z/Is
  789. /((.*)a|(.*)b)z\1/Is
  790. /((.*)a|(.*)b)z\2/Is
  791. /((.*)a|(.*)b)z\3/Is
  792. /((.*)a|^(.*)b)z\3/Is
  793. /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is
  794. /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is
  795. /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is
  796. /(a)(bc)/INDZ
  797. abc
  798. /(?P<one>a)(bc)/INDZ
  799. abc
  800. /(a)(?P<named>bc)/INDZ
  801. /(a+)*zz/I
  802. aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzbbbbbb\M
  803. aaaaaaaaaaaaaz\M
  804. /(aaa(?C1)bbb|ab)/I
  805. aaabbb
  806. aaabbb\C*0
  807. aaabbb\C*1
  808. aaabbb\C*-1
  809. /ab(?P<one>cd)ef(?P<two>gh)/I
  810. abcdefgh
  811. abcdefgh\C1\Gtwo
  812. abcdefgh\Cone\Ctwo
  813. abcdefgh\Cthree
  814. /(?P<Tes>)(?P<Test>)/DZ
  815. /(?P<Test>)(?P<Tes>)/DZ
  816. /(?P<Z>zz)(?P<A>aa)/I
  817. zzaa\CZ
  818. zzaa\CA
  819. /(?P<x>eks)(?P<x>eccs)/I
  820. /(?P<abc>abc(?P<def>def)(?P<abc>xyz))/I
  821. "\[((?P<elem>\d+)(,(?P>elem))*)\]"I
  822. [10,20,30,5,5,4,4,2,43,23,4234]
  823. *** Failers
  824. []
  825. "\[((?P<elem>\d+)(,(?P>elem))*)?\]"I
  826. [10,20,30,5,5,4,4,2,43,23,4234]
  827. []
  828. /(a(b(?2)c))?/DZ
  829. /(a(b(?2)c))*/DZ
  830. /(a(b(?2)c)){0,2}/DZ
  831. /[ab]{1}+/DZ
  832. /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii
  833. Baby Bjorn Active Carrier - With free SHIPPING!!
  834. /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/IiS
  835. Baby Bjorn Active Carrier - With free SHIPPING!!
  836. /a*.*b/ISDZ
  837. /(a|b)*.?c/ISDZ
  838. /abc(?C255)de(?C)f/DZ
  839. /abcde/ICDZ
  840. abcde
  841. abcdfe
  842. /a*b/ICDZ
  843. ab
  844. aaaab
  845. aaaacb
  846. /a+b/ICDZ
  847. ab
  848. aaaab
  849. aaaacb
  850. /(abc|def)x/ICDZ
  851. abcx
  852. defx
  853. abcdefzx
  854. /(ab|cd){3,4}/IC
  855. ababab
  856. abcdabcd
  857. abcdcdcdcdcd
  858. /([ab]{,4}c|xy)/ICDZ
  859. Note: that { does NOT introduce a quantifier
  860. /([ab]{1,4}c|xy){4,5}?123/ICDZ
  861. aacaacaacaacaac123
  862. /\b.*/I
  863. ab cd\>1
  864. /\b.*/Is
  865. ab cd\>1
  866. /(?!.bcd).*/I
  867. Xbcd12345
  868. /abcde/I
  869. ab\P
  870. abc\P
  871. abcd\P
  872. abcde\P
  873. the quick brown abc\P
  874. ** Failers\P
  875. the quick brown abxyz fox\P
  876. "^(0?[1-9]|[12][0-9]|3[01])/(0?[1-9]|1[012])/(20)?\d\d$"I
  877. 13/05/04\P
  878. 13/5/2004\P
  879. 02/05/09\P
  880. 1\P
  881. 1/2\P
  882. 1/2/0\P
  883. 1/2/04\P
  884. 0\P
  885. 02/\P
  886. 02/0\P
  887. 02/1\P
  888. ** Failers\P
  889. \P
  890. 123\P
  891. 33/4/04\P
  892. 3/13/04\P
  893. 0/1/2003\P
  894. 0/\P
  895. 02/0/\P
  896. 02/13\P
  897. /0{0,2}ABC/I
  898. /\d{3,}ABC/I
  899. /\d*ABC/I
  900. /[abc]+DE/I
  901. /[abc]?123/I
  902. 123\P
  903. a\P
  904. b\P
  905. c\P
  906. c12\P
  907. c123\P
  908. /^(?:\d){3,5}X/I
  909. 1\P
  910. 123\P
  911. 123X
  912. 1234\P
  913. 1234X
  914. 12345\P
  915. 12345X
  916. *** Failers
  917. 1X
  918. 123456\P
  919. /abc/I>testsavedregex
  920. <testsavedregex
  921. abc
  922. ** Failers
  923. bca
  924. /abc/IF>testsavedregex
  925. <testsavedregex
  926. abc
  927. ** Failers
  928. bca
  929. /(a|b)/IS>testsavedregex
  930. <testsavedregex
  931. abc
  932. ** Failers
  933. def
  934. /(a|b)/ISF>testsavedregex
  935. <testsavedregex
  936. abc
  937. ** Failers
  938. def
  939. ~<(\w+)/?>(.)*</(\1)>~smgI
  940. <!DOCTYPE seite SYSTEM "http://www.lco.lineas.de/xmlCms.dtd">\n<seite>\n<dokumenteninformation>\n<seitentitel>Partner der LCO</seitentitel>\n<sprache>de</sprache>\n<seitenbeschreibung>Partner der LINEAS Consulting\nGmbH</seitenbeschreibung>\n<schluesselworte>LINEAS Consulting GmbH Hamburg\nPartnerfirmen</schluesselworte>\n<revisit>30 days</revisit>\n<robots>index,follow</robots>\n<menueinformation>\n<aktiv>ja</aktiv>\n<menueposition>3</menueposition>\n<menuetext>Partner</menuetext>\n</menueinformation>\n<lastedited>\n<autor>LCO</autor>\n<firma>LINEAS Consulting</firma>\n<datum>15.10.2003</datum>\n</lastedited>\n</dokumenteninformation>\n<inhalt>\n\n<absatzueberschrift>Die Partnerfirmen der LINEAS Consulting\nGmbH</absatzueberschrift>\n\n<absatz><link ziel="http://www.ca.com/" zielfenster="_blank">\n<bild name="logo_ca.gif" rahmen="no"/></link> <link\nziel="http://www.ey.com/" zielfenster="_blank"><bild\nname="logo_euy.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><link ziel="http://www.cisco.de/" zielfenster="_blank">\n<bild name="logo_cisco.gif" rahmen="ja"/></link></absatz>\n\n<absatz><link ziel="http://www.atelion.de/"\nzielfenster="_blank"><bild\nname="logo_atelion.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><link ziel="http://www.line-information.de/"\nzielfenster="_blank">\n<bild name="logo_line_information.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><bild name="logo_aw.gif" rahmen="no"/></absatz>\n\n<absatz><link ziel="http://www.incognis.de/"\nzielfenster="_blank"><bild\nname="logo_incognis.gif" rahmen="no"/></link></absatz>\n\n<absatz><link ziel="http://www.addcraft.com/"\nzielfenster="_blank"><bild\nname="logo_addcraft.gif" rahmen="no"/></link></absatz>\n\n<absatz><link ziel="http://www.comendo.com/"\nzielfenster="_blank"><bild\nname="logo_comendo.gif" rahmen="no"/></link></absatz>\n\n</inhalt>\n</seite>
  941. /^a/IF
  942. /line\nbreak/I
  943. this is a line\nbreak
  944. line one\nthis is a line\nbreak in the second line
  945. /line\nbreak/If
  946. this is a line\nbreak
  947. ** Failers
  948. line one\nthis is a line\nbreak in the second line
  949. /line\nbreak/Imf
  950. this is a line\nbreak
  951. ** Failers
  952. line one\nthis is a line\nbreak in the second line
  953. /ab.cd/IP
  954. ab-cd
  955. ab=cd
  956. ** Failers
  957. ab\ncd
  958. /ab.cd/IPs
  959. ab-cd
  960. ab=cd
  961. ab\ncd
  962. /(?i)(?-i)AbCd/I
  963. AbCd
  964. ** Failers
  965. abcd
  966. /a{11111111111111111111}/I
  967. /(){64294967295}/I
  968. /(){2,4294967295}/I
  969. "(?i:a)(?i:b)(?i:c)(?i:d)(?i:e)(?i:f)(?i:g)(?i:h)(?i:i)(?i:j)(k)(?i:l)A\1B"I
  970. abcdefghijklAkB
  971. "(?P<n0>a)(?P<n1>b)(?P<n2>c)(?P<n3>d)(?P<n4>e)(?P<n5>f)(?P<n6>g)(?P<n7>h)(?P<n8>i)(?P<n9>j)(?P<n10>k)(?P<n11>l)A\11B"I
  972. abcdefghijklAkB
  973. "(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)A\11B"I
  974. abcdefghijklAkB
  975. "(?P<name0>a)(?P<name1>a)(?P<name2>a)(?P<name3>a)(?P<name4>a)(?P<name5>a)(?P<name6>a)(?P<name7>a)(?P<name8>a)(?P<name9>a)(?P<name10>a)(?P<name11>a)(?P<name12>a)(?P<name13>a)(?P<name14>a)(?P<name15>a)(?P<name16>a)(?P<name17>a)(?P<name18>a)(?P<name19>a)(?P<name20>a)(?P<name21>a)(?P<name22>a)(?P<name23>a)(?P<name24>a)(?P<name25>a)(?P<name26>a)(?P<name27>a)(?P<name28>a)(?P<name29>a)(?P<name30>a)(?P<name31>a)(?P<name32>a)(?P<name33>a)(?P<name34>a)(?P<name35>a)(?P<name36>a)(?P<name37>a)(?P<name38>a)(?P<name39>a)(?P<name40>a)(?P<name41>a)(?P<name42>a)(?P<name43>a)(?P<name44>a)(?P<name45>a)(?P<name46>a)(?P<name47>a)(?P<name48>a)(?P<name49>a)(?P<name50>a)(?P<name51>a)(?P<name52>a)(?P<name53>a)(?P<name54>a)(?P<name55>a)(?P<name56>a)(?P<name57>a)(?P<name58>a)(?P<name59>a)(?P<name60>a)(?P<name61>a)(?P<name62>a)(?P<name63>a)(?P<name64>a)(?P<name65>a)(?P<name66>a)(?P<name67>a)(?P<name68>a)(?P<name69>a)(?P<name70>a)(?P<name71>a)(?P<name72>a)(?P<name73>a)(?P<name74>a)(?P<name75>a)(?P<name76>a)(?P<name77>a)(?P<name78>a)(?P<name79>a)(?P<name80>a)(?P<name81>a)(?P<name82>a)(?P<name83>a)(?P<name84>a)(?P<name85>a)(?P<name86>a)(?P<name87>a)(?P<name88>a)(?P<name89>a)(?P<name90>a)(?P<name91>a)(?P<name92>a)(?P<name93>a)(?P<name94>a)(?P<name95>a)(?P<name96>a)(?P<name97>a)(?P<name98>a)(?P<name99>a)(?P<name100>a)"I
  976. aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
  977. "(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)"I
  978. aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
  979. /[^()]*(?:\((?R)\)[^()]*)*/I
  980. (this(and)that
  981. (this(and)that)
  982. (this(and)that)stuff
  983. /[^()]*(?:\((?>(?R))\)[^()]*)*/I
  984. (this(and)that
  985. (this(and)that)
  986. /[^()]*(?:\((?R)\))*[^()]*/I
  987. (this(and)that
  988. (this(and)that)
  989. /(?:\((?R)\))*[^()]*/I
  990. (this(and)that
  991. (this(and)that)
  992. ((this))
  993. /(?:\((?R)\))|[^()]*/I
  994. (this(and)that
  995. (this(and)that)
  996. (this)
  997. ((this))
  998. /a(b)c/IPN
  999. abc
  1000. /a(?P<name>b)c/IPN
  1001. abc
  1002. /\x{100}/I
  1003. /\x{0000ff}/I
  1004. /^((?P<A>a1)|(?P<A>a2)b)/I
  1005. /^((?P<A>a1)|(?P<A>a2)b)/IJ
  1006. a1b\CA
  1007. a2b\CA
  1008. ** Failers
  1009. a1b\CZ\CA
  1010. /^(?P<A>a)(?P<A>b)/IJ
  1011. ab\CA
  1012. /^(?P<A>a)(?P<A>b)|cd/IJ
  1013. ab\CA
  1014. cd\CA
  1015. /^(?P<A>a)(?P<A>b)|cd(?P<A>ef)(?P<A>gh)/IJ
  1016. cdefgh\CA
  1017. /^((?P<A>a1)|(?P<A>a2)b)/IJ
  1018. a1b\GA
  1019. a2b\GA
  1020. ** Failers
  1021. a1b\GZ\GA
  1022. /^(?P<A>a)(?P<A>b)/IJ
  1023. ab\GA
  1024. /^(?P<A>a)(?P<A>b)|cd/IJ
  1025. ab\GA
  1026. cd\GA
  1027. /^(?P<A>a)(?P<A>b)|cd(?P<A>ef)(?P<A>gh)/IJ
  1028. cdefgh\GA
  1029. /(?J)^((?P<A>a1)|(?P<A>a2)b)/I
  1030. a1b\CA
  1031. a2b\CA
  1032. /^(?P<A>a) (?J:(?P<B>b)(?P<B>c)) (?P<A>d)/I
  1033. / In this next test, J is not set at the outer level; consequently it isn't
  1034. set in the pattern's options; consequently pcre_get_named_substring() produces
  1035. a random value. /Ix
  1036. /^(?P<A>a) (?J:(?P<B>b)(?P<B>c)) (?P<C>d)/I
  1037. a bc d\CA\CB\CC
  1038. /^(?P<A>a)?(?(A)a|b)/I
  1039. aabc
  1040. bc
  1041. ** Failers
  1042. abc
  1043. /(?:(?(ZZ)a|b)(?P<ZZ>X))+/I
  1044. bXaX
  1045. /(?:(?(2y)a|b)(X))+/I
  1046. /(?:(?(ZA)a|b)(?P<ZZ>X))+/I
  1047. /(?:(?(ZZ)a|b)(?(ZZ)a|b)(?P<ZZ>X))+/I
  1048. bbXaaX
  1049. /(?:(?(ZZ)a|\(b\))\\(?P<ZZ>X))+/I
  1050. (b)\\Xa\\X
  1051. /(?P<ABC/I
  1052. /(?:(?(A)(?P=A)a|b)(?P<A>X|Y))+/I
  1053. bXXaYYaY
  1054. bXYaXXaX
  1055. /()()()()()()()()()(?:(?(A)(?P=A)a|b)(?P<A>X|Y))+/I
  1056. bXXaYYaY
  1057. /\777/I
  1058. /\s*,\s*/IS
  1059. \x0b,\x0b
  1060. \x0c,\x0d
  1061. /^abc/Im
  1062. xyz\nabc
  1063. xyz\nabc\<lf>
  1064. xyz\r\nabc\<lf>
  1065. xyz\rabc\<cr>
  1066. xyz\r\nabc\<crlf>
  1067. ** Failers
  1068. xyz\nabc\<cr>
  1069. xyz\r\nabc\<cr>
  1070. xyz\nabc\<crlf>
  1071. xyz\rabc\<crlf>
  1072. xyz\rabc\<lf>
  1073. /abc$/Im<lf>
  1074. xyzabc
  1075. xyzabc\n
  1076. xyzabc\npqr
  1077. xyzabc\r\<cr>
  1078. xyzabc\rpqr\<cr>
  1079. xyzabc\r\n\<crlf>
  1080. xyzabc\r\npqr\<crlf>
  1081. ** Failers
  1082. xyzabc\r
  1083. xyzabc\rpqr
  1084. xyzabc\r\n
  1085. xyzabc\r\npqr
  1086. /^abc/Im<cr>
  1087. xyz\rabcdef
  1088. xyz\nabcdef\<lf>
  1089. ** Failers
  1090. xyz\nabcdef
  1091. /^abc/Im<lf>
  1092. xyz\nabcdef
  1093. xyz\rabcdef\<cr>
  1094. ** Failers
  1095. xyz\rabcdef
  1096. /^abc/Im<crlf>
  1097. xyz\r\nabcdef
  1098. xyz\rabcdef\<cr>
  1099. ** Failers
  1100. xyz\rabcdef
  1101. /^abc/Im<bad>
  1102. /abc/I
  1103. xyz\rabc\<bad>
  1104. abc
  1105. /.*/I<lf>
  1106. abc\ndef
  1107. abc\rdef
  1108. abc\r\ndef
  1109. \<cr>abc\ndef
  1110. \<cr>abc\rdef
  1111. \<cr>abc\r\ndef
  1112. \<crlf>abc\ndef
  1113. \<crlf>abc\rdef
  1114. \<crlf>abc\r\ndef
  1115. /\w+(.)(.)?def/Is
  1116. abc\ndef
  1117. abc\rdef
  1118. abc\r\ndef
  1119. +((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)+I
  1120. /* this is a C style comment */\M
  1121. /(?P<B>25[0-5]|2[0-4]\d|[01]?\d?\d)(?:\.(?P>B)){3}/I
  1122. /()()()()()()()()()()()()()()()()()()()()
  1123. ()()()()()()()()()()()()()()()()()()()()
  1124. ()()()()()()()()()()()()()()()()()()()()
  1125. ()()()()()()()()()()()()()()()()()()()()
  1126. ()()()()()()()()()()()()()()()()()()()()
  1127. (.(.))/Ix
  1128. XY\O400
  1129. /(a*b|(?i:c*(?-i)d))/IS
  1130. /()[ab]xyz/IS
  1131. /(|)[ab]xyz/IS
  1132. /(|c)[ab]xyz/IS
  1133. /(|c?)[ab]xyz/IS
  1134. /(d?|c?)[ab]xyz/IS
  1135. /(d?|c)[ab]xyz/IS
  1136. /^a*b\d/DZ
  1137. /^a*+b\d/DZ
  1138. /^a*?b\d/DZ
  1139. /^a+A\d/DZ
  1140. aaaA5
  1141. ** Failers
  1142. aaaa5
  1143. /^a*A\d/IiDZ
  1144. aaaA5
  1145. aaaa5
  1146. /(a*|b*)[cd]/IS
  1147. /(a+|b*)[cd]/IS
  1148. /(a*|b+)[cd]/IS
  1149. /(a+|b+)[cd]/IS
  1150. /((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
  1151. ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
  1152. (((
  1153. a
  1154. ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
  1155. ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
  1156. )))
  1157. /Ix
  1158. large nest
  1159. /a*\d/BZ
  1160. /a*\D/BZ
  1161. /0*\d/BZ
  1162. /0*\D/BZ
  1163. /a*\s/BZ
  1164. /a*\S/BZ
  1165. / *\s/BZ
  1166. / *\S/BZ
  1167. /a*\w/BZ
  1168. /a*\W/BZ
  1169. /=*\w/BZ
  1170. /=*\W/BZ
  1171. /\d*a/BZ
  1172. /\d*2/BZ
  1173. /\d*\d/BZ
  1174. /\d*\D/BZ
  1175. /\d*\s/BZ
  1176. /\d*\S/BZ
  1177. /\d*\w/BZ
  1178. /\d*\W/BZ
  1179. /\D*a/BZ
  1180. /\D*2/BZ
  1181. /\D*\d/BZ
  1182. /\D*\D/BZ
  1183. /\D*\s/BZ
  1184. /\D*\S/BZ
  1185. /\D*\w/BZ
  1186. /\D*\W/BZ
  1187. /\s*a/BZ
  1188. /\s*2/BZ
  1189. /\s*\d/BZ
  1190. /\s*\D/BZ
  1191. /\s*\s/BZ
  1192. /\s*\S/BZ
  1193. /\s*\w/BZ
  1194. /\s*\W/BZ
  1195. /\S*a/BZ
  1196. /\S*2/BZ
  1197. /\S*\d/BZ
  1198. /\S*\D/BZ
  1199. /\S*\s/BZ
  1200. /\S*\S/BZ
  1201. /\S*\w/BZ
  1202. /\S*\W/BZ
  1203. /\w*a/BZ
  1204. /\w*2/BZ
  1205. /\w*\d/BZ
  1206. /\w*\D/BZ
  1207. /\w*\s/BZ
  1208. /\w*\S/BZ
  1209. /\w*\w/BZ
  1210. /\w*\W/BZ
  1211. /\W*a/BZ
  1212. /\W*2/BZ
  1213. /\W*\d/BZ
  1214. /\W*\D/BZ
  1215. /\W*\s/BZ
  1216. /\W*\S/BZ
  1217. /\W*\w/BZ
  1218. /\W*\W/BZ
  1219. /[^a]+a/BZ
  1220. /[^a]+a/BZi
  1221. /[^a]+A/BZi
  1222. /[^a]+b/BZ
  1223. /[^a]+\d/BZ
  1224. /a*[^a]/BZ
  1225. /(?P<abc>x)(?P<xyz>y)/I
  1226. xy\Cabc\Cxyz
  1227. /(?<abc>x)(?'xyz'y)/I
  1228. xy\Cabc\Cxyz
  1229. /(?<abc'x)(?'xyz'y)/I
  1230. /(?<abc>x)(?'xyz>y)/I
  1231. /(?P'abc'x)(?P<xyz>y)/I
  1232. /^(?:(?(ZZ)a|b)(?<ZZ>X))+/
  1233. bXaX
  1234. bXbX
  1235. ** Failers
  1236. aXaX
  1237. aXbX
  1238. /^(?P>abc)(?<abcd>xxx)/
  1239. /^(?P>abc)(?<abc>x|y)/
  1240. xx
  1241. xy
  1242. yy
  1243. yx
  1244. /^(?P>abc)(?P<abc>x|y)/
  1245. xx
  1246. xy
  1247. yy
  1248. yx
  1249. /^((?(abc)a|b)(?<abc>x|y))+/
  1250. bxay
  1251. bxby
  1252. ** Failers
  1253. axby
  1254. /^(((?P=abc)|X)(?<abc>x|y))+/
  1255. XxXxxx
  1256. XxXyyx
  1257. XxXyxx
  1258. ** Failers
  1259. x
  1260. /^(?1)(abc)/
  1261. abcabc
  1262. /^(?:(?:\1|X)(a|b))+/
  1263. Xaaa
  1264. Xaba
  1265. /^[\E\Qa\E-\Qz\E]+/BZ
  1266. /^[a\Q]bc\E]/BZ
  1267. /^[a-\Q\E]/BZ
  1268. /^(?P>abc)[()](?<abc>)/BZ
  1269. /^((?(abc)y)[()](?P<abc>x))+/BZ
  1270. (xy)x
  1271. /^(?P>abc)\Q()\E(?<abc>)/BZ
  1272. /^(?P>abc)[a\Q(]\E(](?<abc>)/BZ
  1273. /^(?P>abc) # this is (a comment)
  1274. (?<abc>)/BZx
  1275. /^\W*(?:(?<one>(?<two>.)\W*(?&one)\W*\k<two>|)|(?<three>(?<four>.)\W*(?&three)\W*\k'four'|\W*.\W*))\W*$/Ii
  1276. 1221
  1277. Satan, oscillate my metallic sonatas!
  1278. A man, a plan, a canal: Panama!
  1279. Able was I ere I saw Elba.
  1280. *** Failers
  1281. The quick brown fox
  1282. /(?=(\w+))\1:/I
  1283. abcd:
  1284. /(?=(?'abc'\w+))\k<abc>:/I
  1285. abcd:
  1286. /(?'abc'\w+):\k<abc>{2}/
  1287. a:aaxyz
  1288. ab:ababxyz
  1289. ** Failers
  1290. a:axyz
  1291. ab:abxyz
  1292. /(?'abc'a|b)(?<abc>d|e)\k<abc>{2}/J
  1293. adaa
  1294. ** Failers
  1295. addd
  1296. adbb
  1297. /(?'abc'a|b)(?<abc>d|e)(?&abc){2}/J
  1298. bdaa
  1299. bdab
  1300. ** Failers
  1301. bddd
  1302. /^(?<ab>a)? (?(<ab>)b|c) (?('ab')d|e)/x
  1303. abd
  1304. ce
  1305. /(?(<bc))/
  1306. /(?(''))/
  1307. /(?('R')stuff)/
  1308. /((abc (?(R) (?(R1)1) (?(R2)2) X | (?1) (?2) (?R) ))) /x
  1309. abcabc1Xabc2XabcXabcabc
  1310. /(?<A> (?'B' abc (?(R) (?(R&A)1) (?(R&B)2) X | (?1) (?2) (?R) ))) /x
  1311. abcabc1Xabc2XabcXabcabc
  1312. /(?<A> (?'B' abc (?(R) (?(R&1)1) (?(R&B)2) X | (?1) (?2) (?R) ))) /x
  1313. /(?<1> (?'B' abc (?(R) (?(R&1)1) (?(R&B)2) X | (?1) (?2) (?R) ))) /x
  1314. abcabc1Xabc2XabcXabcabc
  1315. /^(?(DEFINE) (?<A> a) (?<B> b) ) (?&A) (?&B) /x
  1316. abcd
  1317. /(?<NAME>(?&NAME_PAT))\s+(?<ADDR>(?&ADDRESS_PAT))
  1318. (?(DEFINE)
  1319. (?<NAME_PAT>[a-z]+)
  1320. (?<ADDRESS_PAT>\d+)
  1321. )/x
  1322. metcalfe 33
  1323. /^(?(DEFINE) abc | xyz ) /x
  1324. /(?(DEFINE) abc) xyz/xI
  1325. /(?(DEFINE) abc){3} xyz/x
  1326. /(a|)*\d/
  1327. \O0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
  1328. \O0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4
  1329. /^a.b/<lf>
  1330. a\rb
  1331. a\nb\<cr>
  1332. a\x85b\<anycrlf>
  1333. ** Failers
  1334. a\nb
  1335. a\nb\<any>
  1336. a\rb\<cr>
  1337. a\rb\<any>
  1338. a\x85b\<any>
  1339. a\rb\<anycrlf>
  1340. /^abc./mgx<any>
  1341. abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x85abc7 JUNK
  1342. /abc.$/mgx<any>
  1343. abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc7 abc9
  1344. /a/<cr><any>
  1345. /a/<any><crlf>
  1346. /^a\Rb/<bsr_unicode>
  1347. a\nb
  1348. a\rb
  1349. a\r\nb
  1350. a\x0bb
  1351. a\x0cb
  1352. a\x85b
  1353. ** Failers
  1354. a\n\rb
  1355. /^a\R*b/<bsr_unicode>
  1356. ab
  1357. a\nb
  1358. a\rb
  1359. a\r\nb
  1360. a\x0bb
  1361. a\x0cb
  1362. a\x85b
  1363. a\n\rb
  1364. a\n\r\x85\x0cb
  1365. /^a\R+b/<bsr_unicode>
  1366. a\nb
  1367. a\rb
  1368. a\r\nb
  1369. a\x0bb
  1370. a\x0cb
  1371. a\x85b
  1372. a\n\rb
  1373. a\n\r\x85\x0cb
  1374. ** Failers
  1375. ab
  1376. /^a\R{1,3}b/<bsr_unicode>
  1377. a\nb
  1378. a\n\rb
  1379. a\n\r\x85b
  1380. a\r\n\r\nb
  1381. a\r\n\r\n\r\nb
  1382. a\n\r\n\rb
  1383. a\n\n\r\nb
  1384. ** Failers
  1385. a\n\n\n\rb
  1386. a\r
  1387. /^a[\R]b/<bsr_unicode>
  1388. aRb
  1389. ** Failers
  1390. a\nb
  1391. /(?&abc)X(?<abc>P)/I
  1392. abcPXP123
  1393. /(?1)X(?<abc>P)/I
  1394. abcPXP123
  1395. /(?(DEFINE)(?<byte>2[0-4]\d|25[0-5]|1\d\d|[1-9]?\d))\b(?&byte)(\.(?&byte)){3}/
  1396. 1.2.3.4
  1397. 131.111.10.206
  1398. 10.0.0.0
  1399. ** Failers
  1400. 10.6
  1401. 455.3.4.5
  1402. /\b(?&byte)(\.(?&byte)){3}(?(DEFINE)(?<byte>2[0-4]\d|25[0-5]|1\d\d|[1-9]?\d))/
  1403. 1.2.3.4
  1404. 131.111.10.206
  1405. 10.0.0.0
  1406. ** Failers
  1407. 10.6
  1408. 455.3.4.5
  1409. /(?:a(?&abc)b)*(?<abc>x)/
  1410. 123axbaxbaxbx456
  1411. 123axbaxbaxb456
  1412. /(?:a(?&abc)b){1,5}(?<abc>x)/
  1413. 123axbaxbaxbx456
  1414. /(?:a(?&abc)b){2,5}(?<abc>x)/
  1415. 123axbaxbaxbx456
  1416. /(?:a(?&abc)b){2,}(?<abc>x)/
  1417. 123axbaxbaxbx456
  1418. /(abc)(?i:(?1))/
  1419. defabcabcxyz
  1420. DEFabcABCXYZ
  1421. /(abc)(?:(?i)(?1))/
  1422. defabcabcxyz
  1423. DEFabcABCXYZ
  1424. /^(a(b))\1\g1\g{1}\g-1\g{-1}\g{-02}Z/
  1425. ababababbbabZXXXX
  1426. /^(a)\g-2/
  1427. /^(a)\g/
  1428. /^(a)\g{0}/
  1429. /^(a)\g{3/
  1430. /^(a)\g{4a}/
  1431. /^a.b/<lf>
  1432. a\rb
  1433. *** Failers
  1434. a\nb
  1435. /.+foo/
  1436. afoo
  1437. ** Failers
  1438. \r\nfoo
  1439. \nfoo
  1440. /.+foo/<crlf>
  1441. afoo
  1442. \nfoo
  1443. ** Failers
  1444. \r\nfoo
  1445. /.+foo/<any>
  1446. afoo
  1447. ** Failers
  1448. \nfoo
  1449. \r\nfoo
  1450. /.+foo/s
  1451. afoo
  1452. \r\nfoo
  1453. \nfoo
  1454. /^$/mg<any>
  1455. abc\r\rxyz
  1456. abc\n\rxyz
  1457. ** Failers
  1458. abc\r\nxyz
  1459. /(?m)^$/<any>g+
  1460. abc\r\n\r\n
  1461. /(?m)^$|^\r\n/<any>g+
  1462. abc\r\n\r\n
  1463. /(?m)$/<any>g+
  1464. abc\r\n\r\n
  1465. /abc.$/mgx<anycrlf>
  1466. abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc9
  1467. /^X/m
  1468. XABC
  1469. ** Failers
  1470. XABC\B
  1471. /(ab|c)(?-1)/BZ
  1472. abc
  1473. /xy(?+1)(abc)/BZ
  1474. xyabcabc
  1475. ** Failers
  1476. xyabc
  1477. /x(?-0)y/
  1478. /x(?-1)y/
  1479. /x(?+0)y/
  1480. /x(?+1)y/
  1481. /^(abc)?(?(-1)X|Y)/BZ
  1482. abcX
  1483. Y
  1484. ** Failers
  1485. abcY
  1486. /^((?(+1)X|Y)(abc))+/BZ
  1487. YabcXabc
  1488. YabcXabcXabc
  1489. ** Failers
  1490. XabcXabc
  1491. /(?(-1)a)/BZ
  1492. /((?(-1)a))/BZ
  1493. /((?(-2)a))/BZ
  1494. /^(?(+1)X|Y)(.)/BZ
  1495. Y!
  1496. /(foo)\Kbar/
  1497. foobar
  1498. /(foo)(\Kbar|baz)/
  1499. foobar
  1500. foobaz
  1501. /(foo\Kbar)baz/
  1502. foobarbaz
  1503. /(?<A>tom|bon)-\k{A}/
  1504. tom-tom
  1505. bon-bon
  1506. ** Failers
  1507. tom-bon
  1508. /(?<A>tom|bon)-\g{A}/
  1509. tom-tom
  1510. bon-bon
  1511. /\g{A/
  1512. /(?|(abc)|(xyz))/BZ
  1513. >abc<
  1514. >xyz<
  1515. /(x)(?|(abc)|(xyz))(x)/BZ
  1516. xabcx
  1517. xxyzx
  1518. /(x)(?|(abc)(pqr)|(xyz))(x)/BZ
  1519. xabcpqrx
  1520. xxyzx
  1521. /(?|(abc)|(xyz))\1/
  1522. abcabc
  1523. xyzxyz
  1524. ** Failers
  1525. abcxyz
  1526. xyzabc
  1527. /(?|(abc)|(xyz))(?1)/
  1528. abcabc
  1529. xyzabc
  1530. ** Failers
  1531. xyzxyz
  1532. /\H\h\V\v/
  1533. X X\x0a
  1534. X\x09X\x0b
  1535. ** Failers
  1536. \xa0 X\x0a
  1537. /\H*\h+\V?\v{3,4}/
  1538. \x09\x20\xa0X\x0a\x0b\x0c\x0d\x0a
  1539. \x09\x20\xa0\x0a\x0b\x0c\x0d\x0a
  1540. \x09\x20\xa0\x0a\x0b\x0c
  1541. ** Failers
  1542. \x09\x20\xa0\x0a\x0b
  1543. /\H{3,4}/
  1544. XY ABCDE
  1545. XY PQR ST
  1546. /.\h{3,4}./
  1547. XY AB PQRS
  1548. /\h*X\h?\H+Y\H?Z/
  1549. >XNNNYZ
  1550. > X NYQZ
  1551. ** Failers
  1552. >XYZ
  1553. > X NY Z
  1554. /\v*X\v?Y\v+Z\V*\x0a\V+\x0b\V{2,3}\x0c/
  1555. >XY\x0aZ\x0aA\x0bNN\x0c
  1556. >\x0a\x0dX\x0aY\x0a\x0bZZZ\x0aAAA\x0bNNN\x0c
  1557. /[\h]/BZ
  1558. >\x09<
  1559. /[\h]+/BZ
  1560. >\x09\x20\xa0<
  1561. /[\v]/BZ
  1562. /[\H]/BZ
  1563. /[^\h]/BZ
  1564. /[\V]/BZ
  1565. /[\x0a\V]/BZ
  1566. /\H++X/BZ
  1567. ** Failers
  1568. XXXX
  1569. /\H+\hY/BZ
  1570. XXXX Y
  1571. /\H+ Y/BZ
  1572. /\h+A/BZ
  1573. /\v*B/BZ
  1574. /\V+\x0a/BZ
  1575. /A+\h/BZ
  1576. / *\H/BZ
  1577. /A*\v/BZ
  1578. /\x0b*\V/BZ
  1579. /\d+\h/BZ
  1580. /\d*\v/BZ
  1581. /S+\h\S+\v/BZ
  1582. /\w{3,}\h\w+\v/BZ
  1583. /\h+\d\h+\w\h+\S\h+\H/BZ
  1584. /\v+\d\v+\w\v+\S\v+\V/BZ
  1585. /\H+\h\H+\d/BZ
  1586. /\V+\v\V+\w/BZ
  1587. /\( (?: [^()]* | (?R) )* \)/x
  1588. (0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(00)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)
  1589. /[\E]AAA/
  1590. /[\Q\E]AAA/
  1591. /[^\E]AAA/
  1592. /[^\Q\E]AAA/
  1593. /[\E^]AAA/
  1594. /[\Q\E^]AAA/
  1595. /A(*PRUNE)B(*SKIP)C(*THEN)D(*COMMIT)E(*F)F(*FAIL)G(?!)H(*ACCEPT)I/BZ
  1596. /^a+(*FAIL)/
  1597. aaaaaa
  1598. /a+b?c+(*FAIL)/
  1599. aaabccc
  1600. /a+b?(*PRUNE)c+(*FAIL)/
  1601. aaabccc
  1602. /a+b?(*COMMIT)c+(*FAIL)/
  1603. aaabccc
  1604. /a+b?(*SKIP)c+(*FAIL)/
  1605. aaabcccaaabccc
  1606. /^(?:aaa(*THEN)\w{6}|bbb(*THEN)\w{5}|ccc(*THEN)\w{4}|\w{3})/
  1607. aaaxxxxxx
  1608. aaa++++++
  1609. bbbxxxxx
  1610. bbb+++++
  1611. cccxxxx
  1612. ccc++++
  1613. dddddddd
  1614. /^(aaa(*THEN)\w{6}|bbb(*THEN)\w{5}|ccc(*THEN)\w{4}|\w{3})/
  1615. aaaxxxxxx
  1616. aaa++++++
  1617. bbbxxxxx
  1618. bbb+++++
  1619. cccxxxx
  1620. ccc++++
  1621. dddddddd
  1622. /a+b?(*THEN)c+(*FAIL)/
  1623. aaabccc
  1624. /(A (A|B(*ACCEPT)|C) D)(E)/x
  1625. ABX
  1626. AADE
  1627. ACDE
  1628. ** Failers
  1629. AD
  1630. /^a+(*FAIL)/C
  1631. aaaaaa
  1632. /a+b?c+(*FAIL)/C
  1633. aaabccc
  1634. /a+b?(*PRUNE)c+(*FAIL)/C
  1635. aaabccc
  1636. /a+b?(*COMMIT)c+(*FAIL)/C
  1637. aaabccc
  1638. /a+b?(*SKIP)c+(*FAIL)/C
  1639. aaabcccaaabccc
  1640. /a+b?(*THEN)c+(*FAIL)/C
  1641. aaabccc
  1642. /a(*PRUNE:XXX)b/
  1643. /a(*MARK)b/
  1644. /(?i:A{1,}\6666666666)/
  1645. /\g6666666666/
  1646. /[\g6666666666]/
  1647. /(?1)\c[/
  1648. /.+A/<crlf>
  1649. \r\nA
  1650. /\nA/<crlf>
  1651. \r\nA
  1652. /[\r\n]A/<crlf>
  1653. \r\nA
  1654. /(\r|\n)A/<crlf>
  1655. \r\nA
  1656. /a(*CR)b/
  1657. /(*CR)a.b/
  1658. a\nb
  1659. ** Failers
  1660. a\rb
  1661. /(*CR)a.b/<lf>
  1662. a\nb
  1663. ** Failers
  1664. a\rb
  1665. /(*LF)a.b/<CRLF>
  1666. a\rb
  1667. ** Failers
  1668. a\nb
  1669. /(*CRLF)a.b/
  1670. a\rb
  1671. a\nb
  1672. ** Failers
  1673. a\r\nb
  1674. /(*ANYCRLF)a.b/<CR>
  1675. ** Failers
  1676. a\rb
  1677. a\nb
  1678. a\r\nb
  1679. /(*ANY)a.b/<cr>
  1680. ** Failers
  1681. a\rb
  1682. a\nb
  1683. a\r\nb
  1684. a\x85b
  1685. /a\Rb/I<bsr_anycrlf>
  1686. a\rb
  1687. a\nb
  1688. a\r\nb
  1689. ** Failers
  1690. a\x85b
  1691. a\x0bb
  1692. /a\Rb/I<bsr_unicode>
  1693. a\rb
  1694. a\nb
  1695. a\r\nb
  1696. a\x85b
  1697. a\x0bb
  1698. ** Failers
  1699. a\x85b\<bsr_anycrlf>
  1700. a\x0bb\<bsr_anycrlf>
  1701. /a\R?b/I<bsr_anycrlf>
  1702. a\rb
  1703. a\nb
  1704. a\r\nb
  1705. ** Failers
  1706. a\x85b
  1707. a\x0bb
  1708. /a\R?b/I<bsr_unicode>
  1709. a\rb
  1710. a\nb
  1711. a\r\nb
  1712. a\x85b
  1713. a\x0bb
  1714. ** Failers
  1715. a\x85b\<bsr_anycrlf>
  1716. a\x0bb\<bsr_anycrlf>
  1717. /a\R{2,4}b/I<bsr_anycrlf>
  1718. a\r\n\nb
  1719. a\n\r\rb
  1720. a\r\n\r\n\r\n\r\nb
  1721. ** Failers
  1722. a\x85\85b
  1723. a\x0b\0bb
  1724. /a\R{2,4}b/I<bsr_unicode>
  1725. a\r\rb
  1726. a\n\n\nb
  1727. a\r\n\n\r\rb
  1728. a\x85\85b
  1729. a\x0b\0bb
  1730. ** Failers
  1731. a\r\r\r\r\rb
  1732. a\x85\85b\<bsr_anycrlf>
  1733. a\x0b\0bb\<bsr_anycrlf>
  1734. /(*BSR_ANYCRLF)a\Rb/I
  1735. a\nb
  1736. a\rb
  1737. /(*BSR_UNICODE)a\Rb/I
  1738. a\x85b
  1739. /(*BSR_ANYCRLF)(*CRLF)a\Rb/I
  1740. a\nb
  1741. a\rb
  1742. /(*CRLF)(*BSR_UNICODE)a\Rb/I
  1743. a\x85b
  1744. /(*CRLF)(*BSR_ANYCRLF)(*CR)ab/I
  1745. /(?<a>)(?&)/
  1746. /(?<abc>)(?&a)/
  1747. /(?<a>)(?&aaaaaaaaaaaaaaaaaaaaaaa)/
  1748. /(?+-a)/
  1749. /(?-+a)/
  1750. /(?(-1))/
  1751. /(?(+10))/
  1752. /(?(10))/
  1753. /(?(+2))()()/
  1754. /(?(2))()()/
  1755. /\k''/
  1756. /\k<>/
  1757. /\k{}/
  1758. /(?P=)/
  1759. /(?P>)/
  1760. /(?!\w)(?R)/
  1761. /(?=\w)(?R)/
  1762. /(?<!\w)(?R)/
  1763. /(?<=\w)(?R)/
  1764. /[[:foo:]]/
  1765. /[[:1234:]]/
  1766. /[[:f\oo:]]/
  1767. /[[: :]]/
  1768. /[[:...:]]/
  1769. /[[:l\ower:]]/
  1770. /[[:abc\:]]/
  1771. /[abc[:x\]pqr:]]/
  1772. /[[:a\dz:]]/
  1773. /^(?<name>a|b\g<name>c)/
  1774. aaaa
  1775. bacxxx
  1776. bbaccxxx
  1777. bbbacccxx
  1778. /^(?<name>a|b\g'name'c)/
  1779. aaaa
  1780. bacxxx
  1781. bbaccxxx
  1782. bbbacccxx
  1783. /^(a|b\g<1>c)/
  1784. aaaa
  1785. bacxxx
  1786. bbaccxxx
  1787. bbbacccxx
  1788. /^(a|b\g'1'c)/
  1789. aaaa
  1790. bacxxx
  1791. bbaccxxx
  1792. bbbacccxx
  1793. /^(a|b\g'-1'c)/
  1794. aaaa
  1795. bacxxx
  1796. bbaccxxx
  1797. bbbacccxx
  1798. /(^(a|b\g<-1>c))/
  1799. aaaa
  1800. bacxxx
  1801. bbaccxxx
  1802. bbbacccxx
  1803. /(^(a|b\g<-1'c))/
  1804. /(^(a|b\g{-1}))/
  1805. bacxxx
  1806. /(?-i:\g<name>)(?i:(?<name>a))/
  1807. XaaX
  1808. XAAX
  1809. /(?i:\g<name>)(?-i:(?<name>a))/
  1810. XaaX
  1811. ** Failers
  1812. XAAX
  1813. /(?-i:\g<+1>)(?i:(a))/
  1814. XaaX
  1815. XAAX
  1816. /(?=(?<regex>(?#simplesyntax)\$(?<name>[a-zA-Z_\x{7f}-\x{ff}][a-zA-Z0-9_\x{7f}-\x{ff}]*)(?:\[(?<index>[a-zA-Z0-9_\x{7f}-\x{ff}]+|\$\g<name>)\]|->\g<name>(\(.*?\))?)?|(?#simple syntax withbraces)\$\{(?:\g<name>(?<indices>\[(?:\g<index>|'(?:\\.|[^'\\])*'|"(?:\g<regex>|\\.|[^"\\])*")\])?|\g<complex>|\$\{\g<complex>\})\}|(?#complexsyntax)\{(?<complex>\$(?<segment>\g<name>(\g<indices>*|\(.*?\))?)(?:->\g<segment>)*|\$\g<complex>|\$\{\g<complex>\})\}))\{/
  1817. /(?<n>a|b|c)\g<n>*/
  1818. abc
  1819. accccbbb
  1820. /^(?+1)(?<a>x|y){0}z/
  1821. xzxx
  1822. yzyy
  1823. ** Failers
  1824. xxz
  1825. /(\3)(\1)(a)/
  1826. cat
  1827. /(\3)(\1)(a)/<JS>
  1828. cat
  1829. /TA]/
  1830. The ACTA] comes
  1831. /TA]/<JS>
  1832. The ACTA] comes
  1833. /(?2)[]a()b](abc)/
  1834. abcbabc
  1835. /(?2)[^]a()b](abc)/
  1836. abcbabc
  1837. /(?1)[]a()b](abc)/
  1838. abcbabc
  1839. ** Failers
  1840. abcXabc
  1841. /(?1)[^]a()b](abc)/
  1842. abcXabc
  1843. ** Failers
  1844. abcbabc
  1845. /(?2)[]a()b](abc)(xyz)/
  1846. xyzbabcxyz
  1847. /(?&N)[]a(?<N>)](?<M>abc)/
  1848. abc<abc
  1849. /(?&N)[]a(?<N>)](abc)/
  1850. abc<abc
  1851. /a[]b/
  1852. /a[^]b/
  1853. /a[]b/<JS>
  1854. ** Failers
  1855. ab
  1856. /a[]+b/<JS>
  1857. ** Failers
  1858. ab
  1859. /a[]*+b/<JS>
  1860. ** Failers
  1861. ab
  1862. /a[^]b/<JS>
  1863. aXb
  1864. a\nb
  1865. ** Failers
  1866. ab
  1867. /a[^]+b/<JS>
  1868. aXb
  1869. a\nX\nXb
  1870. ** Failers
  1871. ab
  1872. /a(?!)+b/
  1873. /a(*FAIL)+b/
  1874. /(abc|pqr|123){0}[xyz]/SI
  1875. / End of testinput2 /