#c# #regex
#c# #регулярное выражение
Вопрос:
Я пытаюсь получить значение «настроить» из следующего https://example.com/estimate/unit/configure/76yc1d2b-31aa-4b5a-95af-8b0f93b01b00?sid=e9a9a541-9417-43c4-a4e9-746ttdd84e9o
С этим регулярным выражением (?<=единица измерения/)(.*)(?=?) но я получил «configure/76yc1d2b-31aa-4b5a-95af-8b0f93b01b00», я бы хотел получить просто «configure»
Кто-нибудь может объяснить мне ошибку, спасибо
Ответ №1:
(?<=unit/)(.*)(?=/)
Решает вашу проблему. Хитрость заключалась в том, чтобы искать «закрывающую» косую черту, в то время как в yoursolution вы искали символ ‘?’
Комментарии:
1. Спасибо, чувак, это было именно то, что мне нужно, и работает идеально
Ответ №2:
Регулярное выражение соответствует всему от начала вашего URL до конца. Если вы замените .* на [^ /] * (сопоставьте все, кроме косой черты), а затем удалите конечную группу, вы должны получить то, что хотите.