- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Господа, помогите, пожалуйста, весь вечер ломаю голову.
<td.*> заменить на <td> - отлично чистит код. Но как строку
заменить на
И второй вопрос, как все <td> содержащие colspan="2"/colspan="3"/colspan="4" и весь мусор что выше, заменить на <td colspan="2"/colspan="3"/colspan="4">?
Буду премного благодарен за помощь.
Найти: (<td)[^>]+(colspan="\d+")[^>]*>
Заменить: \1 \2>
Найти: (<td)[^>]+(colspan="\d+")[^>]*>
Заменить: \1 \2>
Мне необходимо, чтобы условие само определило значение colspan. Также надо прикрутить rowspan. И так же там может не быть ни того не другого. Соответственно "на что меняем" после автозамены должны быть одним из:
- <td colspan="xx"> (именно с тем значение что было в этой стркое в исходнике)
- <td rowspan="xx">
- <td>
---------- Добавлено 09.07.2015 в 12:02 ----------
PS: http://joxi.ru/brR6yJwSbk59r1.png
я тут не в тему, но нафига вам нотпад++ без подсветки синтаксиса?
sublime text попробуйте. регулярки там тоже есть.
я тут не в тему, но нафига вам нотпад++ без подсветки синтаксиса?
sublime text попробуйте. регулярки там тоже есть.
Поставил его только ради автозамены, почистить код.
В общем работает <td.+?colspan="(\d+)"[^>]*> и меняем на <td colspan="$1">. В итоге получается то что требуется в первом посте.
Кто-нибудь подскажет, как прикрутить к этом условию поиск по rowspan и соотв. замену на <td rowspan="xx"> + третий случай, когда нет ни rowspan, ни colspan и заменить нужно просто на <td>?
Brick_Top, :)
1) у вас Notepad++ ничего не нашел потому, что в окне "Replace" вкладка "Заменить",
слева внизу нужно выбрать - "регуляр. выражен" (вместо "расширенный")..
.. 😮 смотрите внимательно свой скрин и попробуйте снова ..
2) Notepad++ не поддерживает применение в своих регулярках поиск методами "или":
(colspan|rowspan)
(colspan)? (rowspan)?
(colspan|rowspan){0,1}
а также подобное (?<=colspan=\"|rowspan=\")(\d+)
поэтому, придется сделать минимум 2 действия
(которые можно записать в макрос и выполнять за раз)
Найти: <td[^>]+([cr]o[lw]span="\d+")[^>]*>
Заменить: <td \1>
и оставшиеся заменяем по общему признаку, к примеру style=
Найти: <td[^>]+style=[^>]+>
Заменить: <td>
такова особенность работы регулярок в Notepad++
предположил что вы знаете и не стал писать сразу 🙄
p.s. пользую Notepad++ v.5.9.8 (UNICODE), в разных версиях возможны различия работы regex
Поставил его только ради автозамены/QUOTE]
RegexBuddy
я тут не в тему, но нафига вам нотпад++ без подсветки синтаксиса?
Там есть подсветка синтаксиса.
RegexBuddy
Или The Regex Coach, чуток проще интерфейс.
Найти: <td[^>]+([cr]o[lw]span="\d+")[^>]*>
Заменить: <td \1>
и оставшиеся заменяем по общему признаку, к примеру style=
Найти: <td[^>]+style=[^>]+>
Заменить: <td>
Вы не представляете от какой головной боли избавили ) Огромнейшее спасибо! 🍻 (не нашел смайла с рукопожатием)
На здоровье! :) .. приятно читать и рад был помочь.