作者ckfish (红豆鱼~)
看板MATLAB
标题[问题] 比对两个字串 只考虑word character
时间Tue Dec 4 04:37:18 2012
想请问有关於字串比对的问题^^"
请问假设我有以下几个字串(散布於两个矩阵中):
A1 = 'ab_c';
A2 = ab_c;
A3 = ab_c ;
A1前後多了上引号,A3最後面则多了一个空格,
以上三个字串想要在判断的时候视为同样的字串,
也就是忽略上引号和空格,只判断word character。
PS:A word character [a-z_A-Z0-9]
单纯使用strcmp的话,三个字串都不一样,
利用strncmp且n<=4时可以将A2和A3判断为相等: strncmp(A2,A3,4) = 1
A1似乎无法藉由strncmp来判断,使得其与A2、A3相等。
目前有试着使用regexp来帮助判断,(边打这篇边想的XD)
Ex: strcmp(A1(regexp(A1,'\w')),A2(regexp(A2,'\w')))
strcmp(A1(regexp(A1,'\w')),A3(regexp(A3,'\w')))
似乎可以成功判断将上述三种字串视为一样,
想请教是否有其他方式呢? (strcmp好像没有搭配\w的功能?)
先谢谢大家的帮忙<(_ _)>
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 128.104.196.194