使用DOORS DXL编写一个函数,该函数在比较两个字符串时,只要它们的一部分匹配,就会返回true。可以使用DXL中的字符串函数来实现这个功能,如substr()和find()。下面是一个示例代码:
bool partialMatch(string s1, string s2) { string shorter, longer; int len1 = length(s1), len2 = length(s2), pos = 0; if (len1 > len2) { shorter = s2; longer = s1; } else { shorter = s1; longer = s2; } while (pos < length(shorter)) { pos = find(longer, substr(shorter, pos+1)); if (pos == 0) { return true; } } return false; }
上面的代码中,我们首先比较两个字符串的长度,并确定哪一个是较短的字符串。在while循环中,我们首先使用DXL函数substr()从较短的字符串中取出一个子字符串,然后使用find()函数在较长的字符串中查找该子字符串,返回该子字符串在较长字符串中的位置。如果找到了一个匹配的位置(即pos=0),则说明这两个字符串是部分匹配的,函数返回true。如果查找整个较长的字符串之后仍然没有找到匹配的子字符串,则说明这两个字符串不是部分匹配的,函数返回false。
上一篇:比较两个字符串的部分内容
下一篇:比较两个字符串的多个结果