我有这个输入:
{http://sdfgdf.dfg.dfg.dfg#value1 : http://sdfgdf.dfg.dfg.dfg#value2}
并且我只想匹配第一个URL中的value1。
我认为以下正则表达式:
[^#]\w*\s:
但这匹配“value1:”
如何在不包含该模式的情况下表达“匹配到\ s:”?
最佳答案
零宽度前瞻。在Java中,您可以这样操作:
[^#]\w*(?=\s:)
您可能会考虑使此正则表达式更加灵活,以处理额外的空格等……以防万一输入与您期望的略有不同。