Регулярное выражение последнее вхождение?
Я пытаюсь поймать последнюю часть после последней обратной косой черты
Мне нужен Web_ERP_Assistant (С )
моя идея была :
C:ProjectsEnsure_SolutionAssistanceApp_WebReferencesWeb_ERP_WebServiceWeb_ERP_Assistant
.+?(?!) // I know there is something with negative look -ahead `(?!)`
но я не могу найти его.
5 ответов:
ваше отрицательное решение lookahead, например, будет следующим:
\(?:.(?!\))+$видеть здесь на Regexr
отрицательный взгляд вперед-это правильный ответ, но его можно написать более четко, например:
(\)(?!.*\)Это ищет вхождение \ , а затем в проверке, которая не совпадает, он ищет любое количество символов, за которыми следует символ, который вы не хотите видеть после него. Поскольку он отрицательный, он соответствует только в том случае, если он не находит совпадения.
вы можете попробовать привязать его к концу строки, что-то вроде
\[^\]*$. Хотя я не уверен, что нужно абсолютно использовать регулярное выражение для этой задачи.
один, который работал для меня было:
.+(\.+)$объяснение:
.+ - any character except newline ( - create a group \.+ - match a backslash, and any characters after it ) - end group $ - this all has to happen at the end of the string
Comments