2015-07-06 2 views
0

Предположим, что я хочу написать сайт, который мог бы динамически создавать тесты по разным темам. Запуск этих предметов сохраняется в базе данных, а важные части текста находятся между двумя тегами, которые я в конечном итоге хочу проверить. Я хочу сделать это, поставив метки между определенными словами или предложениями абзаца, как это:Разбирать пользовательские теги с помощью Javascript

Резюме в базе данных:

Аристотель жил с [начальная] 384 до 322 [/ END] был Греческий философ и ученый родился в македонском городе Стагире, Халкидице, на северной периферии [BEGIN] Классической Греции [/ END].

То, что я хочу, чтобы читать и извлекать текст между двумя тегами с помощью Javascript, которые могут быть в любом формате, в этом примере я использовал [begin] и [/end], но любой формат будет делать, как:

  • [begin] text [end]
  • ### text ###
  • (text)

Есть ли способ сделать это, используя Javascript или потенциально JQuery?

+1

Разве вы не можете использовать HTML? Как ' 384 до 322' (Он родился после его смерти, если вы не добавили _BC_). – blex

+0

Просто будьте осторожны. Если вы получаете ответы через Javascript, люди могут легко обмануть, просмотрев данные, возвращаемые сервером. Вместо этого язык на стороне сервера должен удалять биты между тегами и обрабатывать дескриптор, если пользователь вводит правильный текст. – GregL

+0

@blex Ухмм. Наверное, я мог на самом деле, просто мозговой я думаю .. –

ответ

2

Почему бы просто не использовать простое регулярное выражение, если оно предназначено для личного использования?

/\[BEGIN\](.*?)\[\/END\]/g 

http://jsfiddle.net/DerekL/fbdy9c20/

+0

Отлично! Это именно то, что мне нужно, даже лучше, чем использование тегов HTML. Большое спасибо. –