Инструмент / скрипт для поиска и изменения числовых значений в файле CSS? - PullRequest
3 голосов
/ 08 ноября 2011

Я просто хочу просмотреть и найти каждое числовое значение в одном или нескольких файлах CSS и несколько раз два, а затем сохранить.*

1 Ответ

1 голос
/ 01 марта 2013

Использование регулярных выражений может решить вашу проблему. Например, в Python вы можете сделать следующее:

import re

input = "#content {width:100px;height:20.5%;font-size:150.25%;margin-left:-20px;padding:2 0 -20 14.33333;}"

regex = re.compile("-?[.0-9]+")
scaled_numbers = [float(n)*2 for n in re.findall(regex, input)]
split_text = re.split(regex, input)

output = ''
for i in range(len(scaled_numbers)):
    output += "%s%.2f" % (split_text[i], scaled_numbers[i])

output += split_text[-1]

Этот код может быть уменьшен в длине, но я намеренно оставил его менее компактным для удобства чтения. Один недостаток заключается в том, что он сокращает числа с плавающей запятой только до 2 десятичных разрядов, но это можно легко изменить, если вам действительно нужны расширенные десятичные разряды (измените число в "%s%.2f" на нужное количество знаков).

Обратите внимание, что этот код может изменять имена селекторов CSS (например, #footer-2 станет #footer-4.00). Если вы хотите избежать этого, вам нужно настроить код так, чтобы он игнорировал текст за пределами {...}.

...