使用正则表达式查找字符模式

Find character pattern using regex

我正在尝试查找所有出现的特殊字符 / 并被字母或数字包围。

经过多次尝试,我想出了以下几乎可以满足我需要的正则表达式:

(?![a-z0-9])\/(?=[a-z0-9])

这适用于这些示例:

aa/aa
123/123
aa/123

但是,如果有两个正斜杠在一起,则失败:

http://regexr.com/

在这种情况下,它与我不想要的 http 之后的第二个正斜杠相匹配。

如何修改此 Regex 以满足我的需要?

编辑: 想要在两个正斜杠在一起时进行匹配。我只想匹配单个正斜杠被字母数字字符包围的情况。

试试这个

(!?[a-z0-9])\/(?=[a-z0-9])

简单!

(?![a-z0-9])\/+(?=[a-z0-9])

您应该将 + 设置为 1 次出现的字符。所以你应该写 \/+ 而不是 \/.

你需要一个积极的回顾组,像这样:

(?<=[a-z0-9])+\/{1}(?=[a-z0-9]+)

但是,根据 http://regexr.com/,它在 javascript 中不受支持。

在例如pythonhttp://pythex.org/

试试这个

[a-z0-9](\/)[a-z0-9]

Regex demo

解释:
( … ): 捕获组 sample
\: 转义特殊字符 sample