数学建模社区-数学中国

标题: 判断单个字符是否相等 [打印本页]

作者: 森之张卫东    时间: 2015-9-23 22:23
标题: 判断单个字符是否相等
         判断单个字符是否相等
   我们可以利用MATLAB关系运算符对字符数组中的每一个元素进行检测,看是否相同,但是我们要保证它们的维数是相同的,或其中一个是标量。例如,你可以用相等运算符(==)来检测两字符串是否相匹配。
>> a = 'fate';
>> b = 'cake';
>> result = a == b
result =
     0     1    0     1
所有的关系运算符(>,>=,<,<=,==,~=)都是对字符所对应的ASCII值进行比较。
与C语言不同,MATLAB中没有一个内建函数,对两字符串在整体进行“大于”或“小于”的关系运算。我们将会本节末创建一个类似的函数。
           在一字符串内对字符进行判断
有两个函数可对一个字符串内的字符逐个进行分类。
l isletter用来判断一个字符是否为字母
l isspace判断一个字符是否为空白字符(空格,tab,换行符)
例如,我们要创建一个字符串mystring,
mystring = 'Room 23a'
函数isletter检测字符串中的每一个字符,将产生一个与字符串isletter相同长度输出向量,一个字符对应一个1。
>> a = isletter(mystring)
a =
     1     1    1     1     0    0     0     1
在a中前四个元素和最后一个元素是1,因为它们对应的mystring中的字符是字母。函数isspace检测字符串中的每一个字符,将产生一个和字符串长度相同的输出变量,对应于空字符的向量元素为0。
因为向量的第五个元素对应的是空格,所以向量的第五个元素的值为1。








欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5