RedDk Ответов: 2

Используйте регулярное выражение, чтобы найти и заменить символ.


Вот мой поисковый текст:
<time>2017-11-24T18:47:26Z</time>

Вот мое регулярное выражение для поиска:
[0-9]T[0-9]

Вот мое выражение замены:
[0-9]</date><time>[0-9]

И вот наконец результат:
<time>2017-11-2[0-9]</date><time>[0-9]8:47:26Z</time>

Что я здесь делаю не так?

Что я уже пробовал:

Тот. Вон там, наверху. Вот чего я действительно хочу:
<time>2017-11-24</date><time>18:47:26Z</time>


решение:

[РЕДАКТИРОВАТЬ]
FIND => "(\d+)T(\d+)"
Заменить => "$1</дата><время>$2"
[КОНЕЦ РЕДАКТИРОВАНИЯ]

RedDk

Спасибо, констебль.

Просто понял это и по другому:

выражение (\D+)т(\д+)

с

$1"стрелка влево""Слэш"дата"стрелка вправо""стрелка влево"время"Слэш""стрелка вправо"$2

(Боже, неужели это все так сложно)

Bryian Tan

Я не понимаю, зачем все так усложнять? Если предположить, что в строке есть только буква "Т", то код будет выглядеть следующим образом

var s = "<time>2017-11-24T18:47:26Z</time>".Replace("T","</date><time>");


Выход:
<time>2017-11-24</date><time>18:47:26Z</time>

2 Ответов

Рейтинг:
2

PIEBALDconsult

Попробуйте сделать это таким образом.


Вот мое регулярное выражение для поиска:

(?&ЛТ;=\Д)Т(?=\д)

Вот мое выражение замены:

</дата><время>


(Всего лишь догадка.)

И у вас все равно будет неправильно сформированный XML.


Рейтинг:
2

Patrice T

С небольшим стыдом xml-формата даты и времени вы бы знали, что буква "Т" уникальна, так что

FIND => "T"
REPLACE => "</date><time>"

хватить.

Всего лишь несколько интересных ссылок, которые помогут построить и отладить регулярное выражение.
Вот ссылка на документацию по регулярным выражениям:
perlre - perldoc.perl.org[^]
Вот ссылки на инструменты, помогающие создавать регулярные выражения и отлаживать их:
.Объем тестер регулярное выражение - регулярное выражение шторм[^]
Регулярное Средство Выражения Эспрессо [^]
RegExr: Learn, Build, & Test RegEx[^]
Этот пример показывает вам регулярное выражение в виде красивого графика, который действительно полезен для понимания того, что делает регулярное выражение:
Debuggex: онлайн-тестер визуальных регулярных выражений. JavaScript, Python и PCRE.[^]