我有这个输入:

{http://sdfgdf.dfg.dfg.dfg#value1 : http://sdfgdf.dfg.dfg.dfg#value2}

并且我只想匹配第一个URL中的value1。
我认为以下正则表达式:
[^#]\w*\s:

但这匹配“value1:”

如何在不包含该模式的情况下表达“匹配到\ s:”?

最佳答案

零宽度前瞻。在Java中,您可以这样操作:

[^#]\w*(?=\s:)

您可能会考虑使此正则表达式更加灵活,以处理额外的空格等……以防万一输入与您期望的略有不同。

10-06 02:07