【发布时间】:2019-04-27 22:12:52
【问题描述】:
使用下面的正则表达式,我可以从 CSS 中提取路径,但结果还包括“#”和“?”之后的位。有什么办法可以提取路径
正则表达式
url\([\s]?[\"|\']?(.*?)[\"|\']?[\s]?\)
字符串
url('../fonts/Google_OpenSans/open-sans-v15-latin-italic.eot?#iefix') format('embedded-opentype')
url('../fonts/Google_OpenSans/open-sans-v15-latin-italic.woff2') format('woff2')
url('../fonts/Google_OpenSans/open-sans-v15-latin-italic.woff') format('woff')
url('../fonts/Google_OpenSans/open-sans-v15-latin-italic.ttf') format('truetype')
url('../fonts/Google_OpenSans/open-sans-v15-latin-italic.svg#OpenSans') format('svg')
预期
../fonts/Google_OpenSans/open-sans-v15-latin-italic.eot
实际
../fonts/Google_OpenSans/open-sans-v15-latin-italic.eot?#iefix
【问题讨论】:
-
试试
url\([\s'"]*\K[^'"()?#]+。见live demo here -
Reado,你有时间查看my approach吗?