|
3683 | 3683 | }
|
3684 | 3684 | }
|
3685 | 3685 | function splitBySlash(argString) {
|
3686 |
| - var slashes = findUnescapedSlashes(argString) || []; |
| 3686 | + return splitBySeparator(argString, '/'); |
| 3687 | + } |
| 3688 | + |
| 3689 | + function findUnescapedSlashes(argString) { |
| 3690 | + return findUnescapedSeparators(argString, '/'); |
| 3691 | + } |
| 3692 | + |
| 3693 | + function splitBySeparator(argString, separator) { |
| 3694 | + var slashes = findUnescapedSeparators(argString, separator) || []; |
3687 | 3695 | if (!slashes.length) return [];
|
3688 | 3696 | var tokens = [];
|
3689 | 3697 | // in case of strings like foo/bar
|
|
3695 | 3703 | return tokens;
|
3696 | 3704 | }
|
3697 | 3705 |
|
3698 |
| - function findUnescapedSlashes(str) { |
| 3706 | + function findUnescapedSeparators(str, separator) { |
| 3707 | + if (!separator) |
| 3708 | + separator = '/'; |
| 3709 | + |
3699 | 3710 | var escapeNextChar = false;
|
3700 | 3711 | var slashes = [];
|
3701 | 3712 | for (var i = 0; i < str.length; i++) {
|
3702 | 3713 | var c = str.charAt(i);
|
3703 |
| - if (!escapeNextChar && c == '/') { |
| 3714 | + if (!escapeNextChar && c == separator) { |
3704 | 3715 | slashes.push(i);
|
3705 | 3716 | }
|
3706 | 3717 | escapeNextChar = !escapeNextChar && (c == '\\');
|
|
4566 | 4577 | 'any other getSearchCursor implementation.');
|
4567 | 4578 | }
|
4568 | 4579 | var argString = params.argString;
|
4569 |
| - var tokens = argString ? splitBySlash(argString) : []; |
| 4580 | + var tokens = argString ? splitBySeparator(argString, argString[0]) : []; |
4570 | 4581 | var regexPart, replacePart = '', trailing, flagsPart, count;
|
4571 | 4582 | var confirm = false; // Whether to confirm each replace.
|
4572 | 4583 | var global = false; // True to replace all instances on a line, false to replace only 1.
|
|
4610 | 4621 | global = true;
|
4611 | 4622 | flagsPart.replace('g', '');
|
4612 | 4623 | }
|
4613 |
| - regexPart = regexPart + '/' + flagsPart; |
| 4624 | + regexPart = regexPart.replace(/\//g, "\\/") + '/' + flagsPart; |
4614 | 4625 | }
|
4615 | 4626 | }
|
4616 | 4627 | if (regexPart) {
|
|
0 commit comments