对于Java应用程序,我有以下字符串:/a/b/first/one.js, /a/b/second/two.js, /a/b/third/three.html
我想选择最后一个路径(/a/b/third/three.html
)并使用此正则表达式:/a/b/(.*?)\.html
,但它会选择整行。
如何让正则表达式停止匹配整行并只选择其中的一部分?
答案 0 :(得分:2)
在这种情况下,您可以使用负向前瞻来使用这种淬火贪婪模式:
/a/b/(?:(?!/a/b/).)*\.html
记下(?:(?!/a/b/).)*
与下一个位置没有/a/b/
的任何字符匹配0或更多的ax = df.groupby(['industry','Name'])['Name'].count().unstack(0).plot.bar(title="Number for each Owner Name", figsize=(14,8))
_ = ax.set_xlabel('Owner')
_ = ax.set_ylabel('Frequency')
。对于每个角色都会断言这种负向前瞻。
答案 1 :(得分:2)
您可以匹配非空格(或您想要否定的任何分隔符)而不是.
,以便它不会泄漏到下一个:
/a/b/(\S*)\.html