【发布时间】:2014-02-25 13:03:59
【问题描述】:
我有一个带有可变数量反斜杠的字符串。现在我只想收集最后两个反斜杠之间的部分(字母)。
如果我有/this/is/a/string/blablablablabla,我想捕获string,如果我有/this/is/a/longer/string/than/the/one/before/baba,我想捕获before。
我试过的是:
Regex.Match(myString, @"/(.*)/.*$").Groups[0].Value
但这捕获了第一个斜线和最后一个斜线之间的所有内容,我希望它位于最后一个斜线之间。我对正则表达式很陌生,希望有人能帮助我。
leon 的最后一个答案是/([^/]*)/[^/]*$,但这也捕获了最后一个 / 之后的所有内容,并且还包括第一个 /。
我该如何解决这个问题?
【问题讨论】:
-
你能告诉我们你使用了什么,或者你到目前为止采取了什么过程吗?
-
@NewAmbition 在我最后一次尝试中更新了这个问题。 :)
-
可能是
(?<=/)(?<content>\w+)/(?!\w+/)可能会有所帮助,我认为可能有更简单的表达式,但无论如何这个都可以。您可以从Match.Groups["content"].Value访问比赛。 -
@Mathew 谢谢。很高兴知道您可以使用
<>决定捕获组名称。