preg_match_all (): Неизвестный модификатор '(' [duplicate]

List<Item> Items = obj.getItems();
for(Item item:Items)
             {
                System.out.println(item); 
             }

Итерации по всем объектам в таблице Items.

4
задан user3601725 14 May 2014 в 17:03
поделиться

4 ответа

Если вы хотите совместить один из набора символов, лучше использовать класс символов . И в таком классе большинство правил экранирования не применяются.

Итак, чтобы сопоставить точку, запятую, косую черту или закрывающую скобку, вы можете использовать

[.,/)]
7
ответ дан Tim Pietzcker 26 August 2018 в 13:30
поделиться

Ваше регулярное выражение должно выглядеть так: (\.|,|\/|\))

Проверить его с помощью http://rubular.com/

0
ответ дан Alex Unger 26 August 2018 в 13:30
поделиться

\) - правильный способ избежать скобок. Убедитесь, что вы правильно экранируете \ (\\) в строковом литерале.

3
ответ дан Farhad Alizadeh Noori 26 August 2018 в 13:30
поделиться

Его легче использовать шестнадцатеричный код для ( - \x28, а ) - \x29. Затем в вашем шаблоне используйте

\x28[^\x29]+\x29

или

\x28.+?\x29

, которые могли бы соответствовать:

(abc)


Я также использую это в своих шаблонах регулярных выражений для двойных кавычек (\x22) и одинарной кавычки (\x27), которая является апострофом. Это упрощает работу с шаблоном регулярного выражения в коде C #.

2
ответ дан ΩmegaMan 26 August 2018 в 13:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: