在最后前进或后退斜线之前的所有内容的正则表达式

mav*_*c19 18 regex

我需要一个正则表达式,它将在字符串中找到所有内容,包括最后一个\或/.

例如,c:\ directory\file.txt应该导致c:\ directory \

Mar*_*ers 49

试试这个:( Rubular)

/^(.*[\\\/])/
Run Code Online (Sandbox Code Playgroud)

说明:

^      Start of line/string
(      Start capturing group
.*     Match any character greedily
[\\\/] Match a backslash or a forward slash
)      End the capturing group  

匹配的斜线将是最后一个,因为它的贪婪.*.

如果您的语言支持(或要求)它,您可能希望使用/与正则表达式不同的分隔符,这样您就不必转义正斜杠.

此外,如果您正在解析文件路径,您可能会发现您的语言已经有一个库来执行此操作.这比使用正则表达式更好.

  • +1 **...您可能会发现您的语言已经有一个库可以执行此操作...** (3认同)