2016-10-10 3 views
-1

Я хотел бы разложить GCS URI формы:Извлечение родителя из FilePath

gs://bucket/folder1/folder2/test.csv 

мне нужны эти захватив группы: "ведро" и "folder1/folder2/test.csv"

В проблема в том, что я не знаю, как исключить/из группы любого персонажа.

Начало не работает:

^(gs:\/\/){1}(?!\/) 

Я также попытался

^(gs:\/\/){1}(?!.*\/) 

Я не понимаю, почему это не работает, потому что я видел ответ в другом месте, и это сработало. Я использую java/clojure.

Спасибо!

EDIT

Моя цель сделать что-то вроде выделения название «ведро» в моем ГКС. Я учил это будет соответствовать любой строке, не conatin: /:

(?!\/) 

я увидел нить в другом месте, но это начало захватили всю цепочку после гса: // для меня.

+0

* из группы любого символа * - от обеих групп или что? как следует искать полученные результаты? – RomanPerekhrest

+0

* Я видел ответ в другом месте, и он работал * - что вы имеете в виду? Можете ли вы сказать нам, где вы его видели? Кроме того, попробуйте ['^ gs: \/\/([^ \ /] +) \/(. *)'] (Https://regex101.com/r/2vY4Mg/1), где вы ищете * захваченный *. –

+0

Используйте 're-groups' для получения захваченных частей. –

ответ

1

Вот пример в JS, который соответствует вашему требованию, другой язык должен совпадать.

/^gs:\/\/(.+?)\/(.+)$/ 

Проверить результат here

Смежные вопросы