Как оставить символы при использовании метода string.split
Я использую метод string.split для добавления элементов в массив. Вот как выглядит моя строка:
let modalMessage = "Hello, my name is /# Ann #/. I'm working for /# IStaff #/, could you please call me back"
Я разбиваю по символу "/", редактирую, сохраняю строку с новым значением и отправляю обратно на сервер. Этот "/" не сохраняет. Но сервер считывает новые значения, когда существует этот шаблон "/# ****#/". Как решить эту проблему?
Вот код:
const App = ({ modalMessage }) => (
<p>
{modalMessage .split("/") .map(text => (
text.includes("#") ? <input value = {text} /> : text
))}
</p>
);
В моем фрагменте работает нормально. Вы пытались поставить escape-символ перед # ?
Пожалуйста, покажите минимальный воспроизводимый пример, потому что в данный момент в показанном вами коде нет разделения или отправки на сервер, поэтому вы фактически не показываете код, демонстрирующий проблему, которую вы описываете.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Если вы хотите сохранить косые черты /, вы можете использовать регулярное выражение, содержащее скобки ():
> let modalMessage = "Hello, my name is /# Ann #/. I'm working for /# IStaff #/, could you please call me back";
> let test = modalMessage.split(/(/)/);
> test
(9) ["Hello, my name is ", "/", "# Ann #", "/", ". I'm working for ", "/", "# IStaff #", "/", ", could you please call me back"]
против без регулярного выражения:
> let modalMessage = "Hello, my name is /# Ann #/. I'm working for /# IStaff #/, could you please call me back";
> let test2 = modalMessage.split('/');
> test2
(5) ["Hello, my name is ", "# Ann #", ". I'm working for ", "# IStaff #", ", could you please call me back"]
По крайней мере мне непонятно. Вы можете добавить желаемый результат?