Показаны сообщения с ярлыком regexp. Показать все сообщения
Показаны сообщения с ярлыком regexp. Показать все сообщения

вторник, 19 марта 2013 г.

grep support for \d

A long time ago, when every PC had own OS, it was easy to remember, which RegEx are from POSIX standart, and which appeared only in Perl-style. Now it’s almost forgotten, and C# regexp classes don’t support POSIX character classes (like [:digit:]).

That’s why the debugging of a simple bash script is so difficult. grep is older then a lot of his users, he remembers all of these times and needs -P for Perl mode and ‘\d’ for digits support.

That’s how

ls | grep -e "[0-9][0-9].[0-9][0-9].md"

becames:

ls | grep -Pe "\d{2}.\d{2}.md"

понедельник, 21 мая 2012 г.

Tools: Remove whitespaces at the end of lines in Visual Studio

Известный поисковый запрос, вынесенный в заголовок - одна из самых навязчивых проблем Visual Studio.

Опытные пользователи знают, что в поиске-замене есть свой RegExp. Но работает он не так, как у людей.

Что делать? Искать готовые решения.

Например:

:Zs#$ - все пробелы на конце строк
^:d+ - все цифры в начале строк (например, из какого-нибудь блога код скопировал)

Список будет пополняться.

вторник, 18 октября 2011 г.

JavaScript: быстрый парсинг числа

Как вы думаете, как быстрее парсить число с плавающей точкой - вот так:

function isNumber(n) {
    if (n == null) return null;
    var num_parsed = parseFloat(n);
    return (!isNaN(num_parsed) && isFinite(n)) ?  true : false;
}

или так (regExp немного исправлен по сравнению с примером с суммой, чтобы уважить сербов):

var digitRegEx=/^-?\d+([,\.](\d+)?)?$/g;

function isNumberRegExp(n) {
    if(digitRegEx.test(n))
 return true;
    else
 return false;
}

По идее, regExp должен работать медленней. А на самом деле скорость почти одинакова. Такие дела.

пятница, 14 октября 2011 г.

JavaScript: переменные в RegExp

RegExp-переменные для string.replace() в JavaScript от автора известной мануалки.

  • $1: 1-ая группа
  • $99: 99-ая группа. Если группы 99 нет - 9-ая и 9. Если 9-ой нет - просто 99 долларов
  • $+: Группа с максимальным номером.
  • $&: Весь RegExp. Никакого $0 нет!!!
  • $` (backtick): Слева от RegExp-а.
  • $' (single quote): Справа от RegExp-а.
  • $_: Вся строка, на которую натравили RegExp