Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(628)

Side by Side Diff: test/mjsunit/unicode-test.js

Issue 12427: Merge regexp2000 back into bleeding_edge (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: Created 12 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2008 the V8 project authors. All rights reserved. 1 // Copyright 2008 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 9116 matching lines...) Expand 10 before | Expand all | Expand 10 after
9127 last_c = c.charCodeAt(0); 9127 last_c = c.charCodeAt(0);
9128 } 9128 }
9129 } 9129 }
9130 } 9130 }
9131 re += "]+)"; 9131 re += "]+)";
9132 var char_class = new RegExp(re, "g"); 9132 var char_class = new RegExp(re, "g");
9133 var munged = text.replace(char_class, "foo"); 9133 var munged = text.replace(char_class, "foo");
9134 assertEquals(munged_sizes[i - 1], munged.length, "munged size " + i); 9134 assertEquals(munged_sizes[i - 1], munged.length, "munged size " + i);
9135 } 9135 }
9136 9136
9137
9138 function hex(x) {
9139 x &= 15;
9140 if (x < 10) {
9141 return String.fromCharCode(x + 48);
9142 } else {
9143 return String.fromCharCode(x + 97 - 10);
9144 }
9145 }
9146
9147
9148 function dump_re(re) {
9149 var out = "";
9150 for (var i = 0; i < re.length; i++) {
9151 var c = re.charCodeAt(i);
9152 if (c >= 32 && c <= 126) {
9153 out += re[i];
9154 } else if (c < 256) {
9155 out += "\\x" + hex(c >> 4) + hex(c);
9156 } else {
9157 out += "\\u" + hex(c >> 12) + hex(c >> 8) + hex(c >> 4) + hex(c);
9158 }
9159 }
9160 print ("re = " + out);
9161 }
9162
9137 var thai_l_thingy = "\u0e44"; 9163 var thai_l_thingy = "\u0e44";
9138 var thai_l_regexp = new RegExp(thai_l_thingy); 9164 var thai_l_regexp = new RegExp(thai_l_thingy);
9139 var thai_l_regexp2 = new RegExp("[" + thai_l_thingy + "]"); 9165 var thai_l_regexp2 = new RegExp("[" + thai_l_thingy + "]");
9140 assertTrue(thai_l_regexp.test(thai_l_thingy)); 9166 assertTrue(thai_l_regexp.test(thai_l_thingy));
9141 assertTrue(thai_l_regexp2.test(thai_l_thingy)); 9167 assertTrue(thai_l_regexp2.test(thai_l_thingy));
9142 9168
9143 9169
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698