像上次一样,我想说请不要建议其他的网络方法,因为我想学习正则表达式。这纯粹是为了我的自我学习,下面开始。
贪婪可能有效,但并不总是正确的答案,我猜会导致未来的问题和不良结果。看看这个例子文本,是一个不寻常的格式,我只是在玩而已。
{regex}Hello World GET a1b2c3{regex}
我需要的部分是"a1b2c32",它只能是字母或数字,但始终以空格开头和以 { 结尾。我的第一次尝试是正向前瞻。
(?<={regex}Hello World GET )[a-z0-9]+(?={regex})
但是我考虑匹配任何不是花括号的字符。
"Hello World GET [^{]+"
我知道这段代码会捕获我不想要的文本并将其引用到 group1 中。基本上,我只是想改进我的第一个示例,如果可能的话。对我来说,这一切都关乎学习和测试,所以这不是真正的实际项目。
非常感谢各位抽出时间阅读 :)
\s([a-z0-9]+){
,使用分隔符\s
-{
。然而,正则表达式的形式可能会因为你理论上想要什么而有所不同。 - user557597