请用matlab语言,定义两个字符串str1=’Welcomw to Guangdong R2016’和str2=’Welcome to Guangdong r2016’,试用字符串比较函数strcmp、strncmp、strcmpi和strncmpi比较str1和str2两个字符串。
时间: 2024-02-25 14:54:57 浏览: 104
可以使用以下MATLAB代码进行字符串比较:
```matlab
% 定义两个字符串
str1 = 'Welcomw to Guangdong R2016';
str2 = 'Welcome to Guangdong r2016';
% 使用 strcmp 函数比较两个字符串,区分大小写
res1 = strcmp(str1, str2);
fprintf('strcmp(str1, str2) = %d\n', res1);
% 使用 strncmp 函数比较两个字符串的前 8 个字符,区分大小写
res2 = strncmp(str1, str2, 8);
fprintf('strncmp(str1, str2, 8) = %d\n', res2);
% 使用 strcmpi 函数比较两个字符串,不区分大小写
res3 = strcmpi(str1, str2);
fprintf('strcmpi(str1, str2) = %d\n', res3);
% 使用 strncmpi 函数比较两个字符串的前 8 个字符,不区分大小写
res4 = strncmpi(str1, str2, 8);
fprintf('strncmpi(str1, str2, 8) = %d\n', res4);
```
运行结果:
```
strcmp(str1, str2) = 0
strncmp(str1, str2, 8) = 1
strcmpi(str1, str2) = 1
strncmpi(str1, str2, 8) = 1
```
解释一下结果:
- strcmp 函数比较两个字符串,区分大小写。因为 `str1` 和 `str2` 中的 'w' 和 'W' 不相等,所以比较结果为 0。
- strncmp 函数比较两个字符串的前 8 个字符,区分大小写。因为前 8 个字符都相等,所以比较结果为 1。
- strcmpi 函数比较两个字符串,不区分大小写。因为 `str1` 和 `str2` 中的 'w' 和 'W' 相等,所以比较结果为 1。
- strncmpi 函数比较两个字符串的前 8 个字符,不区分大小写。因为前 8 个字符都相等,所以比较结果为 1。
阅读全文