A
A
Artem00712017-09-11 18:42:04
PHP
Artem0071, 2017-09-11 18:42:04

How to correctly set a regular expression?

How to parse this:

тут какой то рандомный ненужный текст [(%RANDOM[0,1]%=0) {налево|%DIRECTION%=left}:{направо|%DIRECTION%=right&%SOME_ANOTHER_PARAM%=1}] тут какой то рандомный ненужный текст

Approximately this:
arr: {
  condition: {
    string: '%RANDOM[0,1]%=0',
    param: %RANDOM[0,1]%,
    sign: '=',
    condition: '0'
  },
  if_true: {
    string: 'налево|%DIRECTION%=left',
    output: 'налево',
    param_set: '%DIRECTION%=left'
  },
  if_false: {
    string: 'направо|%DIRECTION%=right&%SOME_ANOTHER_PARAM%=1',
    output: 'направо',
    param_set: '%DIRECTION%=right&%SOME_ANOTHER_PARAM%=1'
  }
}

The scheme is something like this:
[(УСЛОВИЕ){ЕСЛИ_ИСТИНА|ИЗМЕНЕНИЕ_ПАРАМЕТРОВ}:{ЕСЛИ_ЛОЖЬ|ИЗМЕНЕНИЕ_ПАРАМЕТРОВ}]

Answer the question

In order to leave comments, you need to log in

1 answer(s)
S
Stalker_RED, 2017-09-11
@Artem0071

Something like this: /\[\((.+)\) \{(.+)\}:\{(.+)\}\]/g
https://regex101.com/r/bxxIl0/1

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question