Split String (String содержит регулярное выражение) - PullRequest
0 голосов
/ 03 мая 2019

Я хочу отделить последнюю строку от заданного пути, эта строка содержит некоторые числа, такие как 1.625.235, но эти числа меняются каждый раз. Независимо от числа, которое должна быть разбита последняя строка.

Пример:

string = "C:/chef/cache/Dynatrace-OneAgent-Windows-1.625.235.msi"
output:  Dynatrace-OneAgent-Windows-1.625.235.msi

string = "C:/chef/cache/Dynatrace-OneAgent-Windows-1.181.539.msi"
output:  Dynatrace-OneAgent-Windows-1.181.539.msi

Это то, что мы пытались

  • ("C: / chef / cache / Dynatrace-OneAgent-Windows - / \ d. \ D +. \ D + /. Msi"). Split ('/') [3]
  • ("C: / chef / cache / Dynatrace-OneAgent-Windows - '/ \ d. \ D +. \ D + /'. Msi"). Split ('/') [3]
  • ("C: / chef / cache / Dynatrace-OneAgent-Windows - '\ d. \ D +. \ D +'. Msi"). Split ('/') [3]
  • ("C: / chef / cache / Dynatrace-OneAgent-Windows - '(\ d. \ D +. \ D +'). Msi"). Split ('/') [3]
  • ("C: / chef / cache / Dynatrace-OneAgent-Windows - ('/ \ d. \ D +. \ D + /'). Msi"). Split ('/') [3]
  • ( "C:. / Повар / кэш / Dynatrace-OneAgent-Windows - ( '.. \ D \ d + \ d +) МСИ") Раскол ( '/') [3]

Ответы [ 2 ]

4 голосов
/ 03 мая 2019

Если желаемым выводом всегда является имя файла в конце пути, вы также можете использовать File.basename.

string = "C:/chef/cache/Dynatrace-OneAgent-Windows-1.625.235.msi"
output = File.basename(string) # => "Dynatrace-OneAgent-Windows-1.625.235.msi"
2 голосов
/ 03 мая 2019
string="C:/chef/cache/Dynatrace-OneAgent-Windows-1.625.235.msi"

p string.split("/").last

выход

"Dynatrace-OneAgent-Windows-1.625.235.msi"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...