我在条件中有以下字符串:10.13.0.90:7000
我想将其提取为两个条件,例如10.13.0.90和7000。
我试过了
<propertyregex property="client.ip" input="${client.address}" regexp="[0-9.]*:[0-9]*" select="\1" />
但这不起作用。条件非常肯定是正确的。有什么建议吗?
非常感谢!
答案 0 :(得分:3)
\1
表示第一个分组。但你根本没有对()
进行分组。
试试这个:
<propertyregex property="client.ip" input="${client.address}"
regexp="([0-9\.]*):[0-9]*" select="\1" />
答案 1 :(得分:2)
您需要使用括号来捕获您使用“\ 1”引用的组,例如
regexp="([0-9.]*):[0-9]*"
顺便说一句,您可以使用\d
而不是[0-9]
来表达数字,例如
regexp="(\d.*):\d*"