Шаблон регулярных выражений в JSON?

Я пытаюсь иметь один файл JSON для проверки данных как спереди (JS), так и обратно (PHP). Я не могу понять, как получить свой шаблон в json-строке, PHP не будет его преобразовывать. Вот что я хотел бы использовать (проверка электронной почты):

'{"name":"email", "pattern":"^[a-z0-9]+(\.[_a-z0-9]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[az]{2,15})$"}' 

Я полагаю, что есть что-то в шаблоне, которое не рассматривается как строка? Это как есть, не будет преобразовываться в объект в PHP. Мне не нужно было ничего избегать, но я могу ошибаться …

благодаря

Изменить: Пробовал это, как это было предложено в комментариях:

 json_decode('{"name":"email", "pattern":"^[a-z0-9]+(\\.[_a-z0-9]+)*@[a-z0-9-]+(\\.[a-z0-9-]+)*(\\.[az]{2,15})$"}‌​'); ==> NULL 

Related of "Шаблон регулярных выражений в JSON?"

Проблема – обратная косая черта \ . Используйте два, чтобы сигнализировать, что есть один, и он будет работать хорошо:

 {"name":"email","pattern":"^[a-z0-9]+(\\.[_a-z0-9]+)*@[a-z0-9-]+(\\.[a-z0-9-]+)*(\\.[az]{2,15})$"} 

json_decode() справедливо JSON, но вызовет проблему как строку PHP, поскольку \\ уже будет интерпретироваться как один, прежде чем он будет передан json_decode() , и мы вернемся туда, откуда мы начали. Как говорится в комментариях, так как это может быть разрешено путем добавления четырех обратных косых черт:

 {"name":"email","pattern":"^[a-z0-9]+(\\\\.[_a-z0-9]+)*@[a-z0-9-]+(\\\\.[a-z0-9-]+)*(\\\\.[az]{2,15})$"} 

Или сразу передав содержимое из file_get_contents() (или аналогичного) в json_decode() .