Qtp使用正则表达式选择项目

时间:2016-06-25 07:55:58

标签: qtp

我正在学习qtp,我有一个列表字段,我想要选择一个项目表单。为此,我使用以下代码,它是使用qtp中的记录选项生成的。现在系统使用选择“123”来代替123我想要^ 1 \ d \ d

实际代码

VbWindow("frmMDI").VbWindow("frmcheckIn").VbComboBox("cboRoomNo").Select "123"

我尝试了以下代码,但它无法正常工作

VbWindow("frmMDI").VbWindow("frmcheckIn").VbComboBox("cboRoomNo").Select ("^1\d\d")

1 个答案:

答案 0 :(得分:4)

VbComboBox.Select不支持正则表达式。您必须迭代所有值并自己执行正则表达式匹配。

Set re = New RegExp
re.Pattern = "^1\d\d"
Len = VbWindow("frmMDI").VbWindow("frmcheckIn").VbComboBox("cboRoomNo").GetItemsCount()
For i = 0 to Len - 1
    item = VbWindow("frmMDI").VbWindow("frmcheckIn").VbComboBox("cboRoomNo").GetItem(i)
    If re.Test(item) Then 
         VbWindow("frmMDI").VbWindow("frmcheckIn").VbComboBox("cboRoomNo").Select(item)
         Exit For    
    End If
Next