Экранирование кавычек: различия между версиями
Материал из Planfix
Artem (обсуждение | вклад) Нет описания правки |
Seva (обсуждение | вклад) Нет описания правки |
||
(не показано 8 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
{{#seo: | {{#seo: | ||
|title=Экранирование | |title=Экранирование кавычек | ||
|titlemode=append | |titlemode=append | ||
|keywords=Экранирование | |keywords=Экранирование кавычек, планфикс, функции, ковычки, экранирование | ||
|description=Экранирование | |description=Экранирование кавычек | ||
}} | }} | ||
Если одним из аргументов любой [[Функции |функции]] является строка с кавычками внутри, тогда эти внутренние кавычки обязательно надо экранировать. | Если одним из аргументов любой [[Функции |функции]] является строка с кавычками (или другими спец. символами) внутри, тогда эти внутренние кавычки обязательно надо экранировать. | ||
<pre>ФУНКЦИЯ("строка \"кавычка")</pre> | <pre>ФУНКЦИЯ("строка \"кавычка")</pre> | ||
Строка 17: | Строка 17: | ||
Используйте функцию [[Функция REGEXPFIND |REGEXPFIND]], обязательно экранируйте внутренние кавычки вокруг ссылки (выделено красным): | Используйте функцию [[Функция REGEXPFIND |REGEXPFIND]], обязательно экранируйте внутренние кавычки вокруг ссылки (выделено красным): | ||
<div style="display: block; padding: 1em; margin: 0 0 10px; font-size: 13px; line-height: 1.65; color: black; word-wrap: break-word; background-color: #f9f9f9; border: 1px solid #ddd; border-radius: 4px;">REGEXPFIND(<nowiki>{{Задача.Строка для ссылки}}</nowiki>;"(?<=href=<span style="color: red">\</span>").*?(?=<span style="color: red">\</span>")")</div> | <div style="display: block; padding: 1em; margin: 0 0 10px; font-size: 13px; line-height: 1.65; color: black; word-wrap: break-word; background-color: #f9f9f9; border: 1px solid #ddd; border-radius: 4px;">REGEXPFIND(<nowiki>{{Задача.Строка для ссылки}}</nowiki>;"(?<=href=<span style="color: red">'''\'''</span>").*?(?=<span style="color: red">'''\'''</span>")")</div> | ||
Строка 23: | Строка 23: | ||
<pre>https://site.com/oferta/krem-1229</pre> | <pre>https://site.com/oferta/krem-1229</pre> | ||
== Все экранируемые спецсимволы == | |||
{| class="wikitable" | |||
|- | |||
! Написано внутри строки !! !! Останется при её обработке | |||
|- | |||
| \" || -> || " | |||
|- | |||
| \\ || ->|| \ | |||
|- | |||
| \n || ->|| символ переноса строки | |||
|- | |||
| \t || ->|| символ табуляции | |||
|} | |||
== Перейти == | == Перейти == | ||
*[[Функции]] | *[[Функции]] |
Текущая версия от 11:45, 12 декабря 2023
Если одним из аргументов любой функции является строка с кавычками (или другими спец. символами) внутри, тогда эти внутренние кавычки обязательно надо экранировать.
ФУНКЦИЯ("строка \"кавычка")
Например, есть строка и вам надо получить ссылку:
<a href="https://site.com/oferta/krem-1229">Крем для кожи</a>
Используйте функцию REGEXPFIND, обязательно экранируйте внутренние кавычки вокруг ссылки (выделено красным):
REGEXPFIND({{Задача.Строка для ссылки}};"(?<=href=\").*?(?=\")")
В итоге в вычисляемом поле получите нужную ссылку:
https://site.com/oferta/krem-1229
Все экранируемые спецсимволы
Написано внутри строки | Останется при её обработке | |
---|---|---|
\" | -> | " |
\\ | -> | \ |
\n | -> | символ переноса строки |
\t | -> | символ табуляции |