Java examples for Scripting:Javascript
is Javascript Octal Escape
/*/*from ww w.ja v a 2 s .c o m*/ * ============================================================================= * * Copyright (c) 2014, The UNBESCAPE team (http://www.unbescape.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * ============================================================================= */ //package com.java2s; public class Main { static boolean isOctalEscape(final String text, final int start, final int end) { if (start >= end) { return false; } final char c1 = text.charAt(start); if (c1 < '0' || c1 > '7') { return false; } if (start + 1 >= end) { return (c1 != '0'); // It would not be an octal escape, but the U+0000 escape sequence. } final char c2 = text.charAt(start + 1); if (c2 < '0' || c2 > '7') { return (c1 != '0'); // It would not be an octal escape, but the U+0000 escape sequence. } if (start + 2 >= end) { return (c1 != '0' || c2 != '0'); // It would not be an octal escape, but the U+0000 escape sequence + '0'. } final char c3 = text.charAt(start + 2); if (c3 < '0' || c3 > '7') { return (c1 != '0' || c2 != '0'); // It would not be an octal escape, but the U+0000 escape sequence + '0'. } return (c1 != '0' || c2 != '0' || c3 != '0'); // Check it's not U+0000 (escaped) + '00' } static boolean isOctalEscape(final char[] text, final int start, final int end) { if (start >= end) { return false; } final char c1 = text[start]; if (c1 < '0' || c1 > '7') { return false; } if (start + 1 >= end) { return (c1 != '0'); // It would not be an octal escape, but the U+0000 escape sequence. } final char c2 = text[start + 1]; if (c2 < '0' || c2 > '7') { return (c1 != '0'); // It would not be an octal escape, but the U+0000 escape sequence. } if (start + 2 >= end) { return (c1 != '0' || c2 != '0'); // It would not be an octal escape, but the U+0000 escape sequence + '0'. } final char c3 = text[start + 2]; if (c3 < '0' || c3 > '7') { return (c1 != '0' || c2 != '0'); // It would not be an octal escape, but the U+0000 escape sequence + '0'. } return (c1 != '0' || c2 != '0' || c3 != '0'); // Check it's not U+0000 (escaped) + '00' } }