SoapUI - Groovy - 正则表达式 - 匹配空值或日期

SoapUI - Groovy - RegEx - Match empty or date

我有下面的代码,当 RawValue 标签之间没有任何内容时可以使用,但是我需要匹配 RawValue 标签之间没有任何内容或格式为 5/11/2015 的日期的情况。我虽然 .* 会匹配任何东西,但我认为 / 导致了问题。任何想法

sw = sw.replaceAll(/\<QuestionType\>Date\<\/QuestionType\>\s+\<RawValue\>\.*\<\/RawValue\>/){
'<QuestionType>Date</QuestionType>         <RawValue>' + sdf.format(date) + '</RawValue>'

问题是您要转义 . 字符。默认情况下,正则表达式中的 . 字符匹配 任何字符 ,但是如果你将它转义 \.,它将完全匹配点。参见 java pattern regex

因此将您的正则表达式更改为:

/\<QuestionType\>Date\<\/QuestionType\>\s+\<RawValue\>.*\<\/RawValue\>/.