Условное отображение с помощью JavaScript Regex

Мне нужно сопоставить строку, такую как эта:

'if Country equals "United States" then Show'

Я работаю с модулем Webforms for Marketers в Sitecore. Sitecore - это CMS на основе .NET. Модули Webforms for Marketers - это модуль, который предоставляет не-разработчикам графический интерфейс для разработки форм с текстовыми полями, раскрывающимися списками, флажками и т. Д. У меня есть требования, чтобы отображать только определенные поля в форме, если пользователь выбрал определенное вариант в предыдущем поле. Например: показывать раскрывающийся список «Состояния» можно только в том случае, если пользователь выбрал «Соединенные Штаты». из раскрывающегося списка Страна. Проблема состоит в том, что модуль WFFM не поддерживает условную визуализацию полей, поэтому я пытаюсь реализовать ее самостоятельно с помощью JavaScript. Моя идея заключается в следующем:

I'll build out the form in the module with all of the possible fields When the page loads, I'll use JavaScript to hide fields that depend on the value of previous fields When a user interacts with a field, I'll run some JavaScript to check the value of the field and determine whether or not I should show one or more of the fields that I hid on page load.

Я в основном пишу переводчик дляif заявление; Я даю маркетологам способ «программировать»; форма.Country это название выпадающего списка на моей странице.equals это условие."United States" является одним из значений в раскрывающемся списке. Если пользователь выбираетUnited States в раскрывающемся списке,then Show раскрывающийся список Штаты.

Таким образом, входные данные для теста регулярного выражения всегда будут иметь следующий формат:

always starts with the keyword if followed by 1 or more white-spaces followed by any number of digits, and/or letters and/or white-spaces The name of controls can contain more than one word with spaces and even numbers For example: First Name, or, Address Line 1 followed by 1 or more white-spaces followed by the keyword equals followed by 1 or more white-spaces followed by 1 double-quote followed by any number of digits, and/or letters and/or white-spaces The value of the control can contain more than one word with spaces and even numbers followed by 1 double-quote followed by 1 or more white-spaces followed by the keyword then followed by either the keyword Show or the keyword Hide

У меня так много работает, но это не все требования, которые я перечислил выше. Эта строка полностью соответствует пробелу после имени элемента управления.

var pattern = /^if\s+(\d*|\w*)\s+.*$/;

Но когда я пытаюсь сопоставить двойные кавычки, это не работает; Я действительно не знаю синтаксиса для сопоставления в двойных кавычках. Я пробовал все следующее, ни одна из них не работает:

var pattern = /^if\s+(\d*|\w*)\s+["].*$/;

var pattern = /^if\s+(\d*|\w*)\s+\".*$/;

var pattern = /^if\s+(\d*|\w*)\s+\"{1}.*$/;

Любая помощь, которую вы можете оказать, будет принята с благодарностью!

Ответы на вопрос(2)

Ваш ответ на вопрос