我正在尝试创建一个正则表达式来选择包含空格的文件路径,而不是用引号括起来。另外,我只想要以卷号开头的路径(例如,C:\,D:\,E :),我想忽略路径之后的任何开关或命令。
以下面的列表为例,我用粗体突出显示了我要匹配的所有文本并返回:
<小时/> C:\此路径有空格\ system.sys -switch /命令
到目前为止,我提出的是:
^\w:\(.+)(.\w\w\w)
哪种工作,但它选择带有空格和没有空格的路径。如果路径为四个字符的扩展名,例如.xlsx
,它也不会选择完整的文件名非常感谢任何帮助。如果你发布了一个更好的正则表达式,如果你添加了一些解释,那将非常有用,因为我正在努力学习它。
谢谢!
答案 0 :(得分:3)
我会去
^[A-Z]:\\.+\s.+\.\S+
^
是字符串开头的锚点[A-Z]:\\
匹配后跟冒号和反斜杠的字母.+
匹配任何字符,1次或多次\s
匹配单个空格.+\.\S+
匹配后跟点和非空格的任何字符答案 1 :(得分:0)
我会使用的正则表达式是
^\w:[^\s]+[\.]*[^\s]+
这将找到任何以字母数字开头并且不包含空格的内容。