#regex #nintex-workflow
Вопрос:
У меня есть текст, приведенный в этом формате
Germany|fbf4cf3c-ebfe-43c8-aaf9-6811bd3488b0
Как должно выглядеть регулярное выражение, чтобы получить Germany
, и как должно выглядеть регулярное выражение, чтобы получить fbf4cf3c-ebfe-43c8-aaf9-6811bd3488b0
?
Я использую рабочий процесс Nintex и пытался . ?(?=|)
, но он работает неправильно.
Комментарии:
1.Вы можете использовать 2 группы захвата
b(w )|([a-f0-9] (?:-[a-f0-9] ) )b
regex101.com/r/QM7yeE/12. @Thefourthbird Как я могу захватить первую группу «Германия» с помощью регулярного выражения?
3. если у вас есть совпадение, возможно, вы можете использовать группу 1 в замене с помощью
$1
или1
4. Отдельные совпадения, которые вы могли бы использовать
w (?=|[a-f0-9] (?:-[a-f0-9] ) b)
для Германии и(?<=w|)[a-f0-9] (?:-[a-f0-9] ) b
для guid5. Регулярные выражения хороши, но они не дают самого четкого кода. Возможно, простое разделение по символу
|
сделает код более легко читаемым. Я не знаю, существует ли он в Nintext, хотя
Ответ №1:
Вы могли бы использовать 2 группы захвата, и вы могли бы получить совпадения, используя $1
и $2
:
(w )|([a-f0-9] (?:-[a-f0-9] ) )b
(w )
Захватите группу 1, сопоставьте 1 словесные символы|
Матч|
(
Группа захвата 2[a-f0-9]
Матч 1 символы a-f 0-9(?:-[a-f0-9] )
Повторите 1 раз совпадение-
и 1 символов a-f o-9
)b
Закройте группу 2, за которой следует граница слова, чтобы предотвратить частичное совпадение
Смотрите демонстрацию регулярных выражений
Чтобы получить отдельные совпадения, вы также можете использовать поисковые системы.
Сопоставьте 1 или более словесных символов, утверждающих формат a |
и гильдии, справа, используя положительный внешний вид:
w (?=|[a-f0-9] (?:-[a-f0-9] ) b)
Или сопоставьте шаблон, подобный гильдии, утверждающий символ слова, за которым следует символ |
слева, используя положительный взгляд сзади:
(?<=w|)[a-f0-9] (?:-[a-f0-9] ) b