正则表达式匹配userdeffields

时间:2015-11-04 17:13:09

标签: regex excel-vba vba excel

我正在寻找一个符合以下条件的正则表达式:

LiqUserDefField#(where#=1–2
UserDefField(#=1–18)
UserDefinedField#(where#=1–3)
UserDefType#(where#=1–2)
UserDefinedField#(#=1–10)

我想回来:

LiqUserDefField1
LiqUserDefField2

UserDefField1
UserDefField2
UserDefField3
UserDefField4
UserDefField5
UserDefField6
UserDefField7
UserDefField8
UserDefField9
UserDefField10
UserDefField11
UserDefField12
UserDefField13
UserDefField14
UserDefField15
UserDefField16
UserDefField17
UserDefField18

UserDefinedField1
UserDefinedField2
UserDefinedField3

UserDefType1
UserDefType2
UserDefType3

UserDefField1
UserDefField2
UserDefField3
UserDefField4
UserDefField5
UserDefField6
UserDefField7
UserDefField8
UserDefField9
UserDefField10

我现在在Regex101.com上玩了几个小时,但我没有取得任何进展。我会让自己难堪并展示到目前为止我一直在努力的事情:

\w+UserDef\w+\#\(\w+\#\=\(\d)\-(\d) 

我在Excel VBA中使用Microsoft Regex Parser。

以下是我提出的一个例子:Regex101

1 个答案:

答案 0 :(得分:0)

试试这个:

fwrite()

请见Regex101

对于更通用的匹配器(根据要求),您可以将其简化为:

LiqUserDefField[1-2]|UserDefField(1[0-8]|[0-9])|UserDefinedField[0-3]|UserDefType[1-3]|UserDefinedField(10|[0-9])

请见Regex101