一切,我有一个包含以下内容的有效载荷:正则表达式匹配除字符
\帕特里克-TES t - f i l e . t x t x SMB2
我正在寻找patrick-test-file.txt的文件名
我可以通过这种紧密的,但它仍然包含一切(包括ASCII字符)
[\\\\](.*?)x�SMB2
结果如下: p a t r i c k - t e s t - f i l e . t x t 为捕获组。
我该如何匹配文件名的字符,可以是任意长度的字符,也可以包含字母数字字符?这是可能的纯正则表达式?
任何帮助,非常感谢。
您可以使用字符组:“[^ \ w \ d。] +'并将其替换为”无“? [Regex101.com](http://regex101.com/r/tR8dX0/1)或[this](http://regex101.com/r/tR8dX0/2)。 (编辑:我猜'\ w'和'\ d'都是多余的)。 – OnlineCop 2014-10-07 20:33:29
哪种语言?哪个正则表达式引擎? – revo 2014-10-07 20:36:13
@OnlineCop我看到用什么都替换它的问题,但我认为用'$ 1'替换'[^ - \ w。\\]([ - \ w。\\])''是个好主意,部分分离(文件名和那个SMB2结尾),然后字符串解析其余部分。 – Suamere 2014-10-07 21:14:36