xref: /plan9/sys/src/cmd/tbl/ts.c (revision 3e12c5d1bb89fc02707907988834ef147769ddaf)
1*3e12c5d1SDavid du Colombier /* ts.c: minor string processing subroutines */
2*3e12c5d1SDavid du Colombier #include "t.h"
3*3e12c5d1SDavid du Colombier 
4*3e12c5d1SDavid du Colombier int
match(char * s1,char * s2)5*3e12c5d1SDavid du Colombier match (char *s1, char *s2)
6*3e12c5d1SDavid du Colombier {
7*3e12c5d1SDavid du Colombier 	while (*s1 == *s2)
8*3e12c5d1SDavid du Colombier 		if (*s1++ == '\0')
9*3e12c5d1SDavid du Colombier 			return(1);
10*3e12c5d1SDavid du Colombier 		else
11*3e12c5d1SDavid du Colombier 			s2++;
12*3e12c5d1SDavid du Colombier 	return(0);
13*3e12c5d1SDavid du Colombier }
14*3e12c5d1SDavid du Colombier 
15*3e12c5d1SDavid du Colombier 
16*3e12c5d1SDavid du Colombier int
prefix(char * small,char * big)17*3e12c5d1SDavid du Colombier prefix(char *small, char *big)
18*3e12c5d1SDavid du Colombier {
19*3e12c5d1SDavid du Colombier 	int	c;
20*3e12c5d1SDavid du Colombier 
21*3e12c5d1SDavid du Colombier 	while ((c = *small++) == *big++)
22*3e12c5d1SDavid du Colombier 		if (c == 0)
23*3e12c5d1SDavid du Colombier 			return(1);
24*3e12c5d1SDavid du Colombier 	return(c == 0);
25*3e12c5d1SDavid du Colombier }
26*3e12c5d1SDavid du Colombier 
27*3e12c5d1SDavid du Colombier 
28*3e12c5d1SDavid du Colombier int
letter(int ch)29*3e12c5d1SDavid du Colombier letter (int ch)
30*3e12c5d1SDavid du Colombier {
31*3e12c5d1SDavid du Colombier 	if (ch >= 'a' && ch <= 'z')
32*3e12c5d1SDavid du Colombier 		return(1);
33*3e12c5d1SDavid du Colombier 	if (ch >= 'A' && ch <= 'Z')
34*3e12c5d1SDavid du Colombier 		return(1);
35*3e12c5d1SDavid du Colombier 	return(0);
36*3e12c5d1SDavid du Colombier }
37*3e12c5d1SDavid du Colombier 
38*3e12c5d1SDavid du Colombier 
39*3e12c5d1SDavid du Colombier int
numb(char * str)40*3e12c5d1SDavid du Colombier numb(char *str)
41*3e12c5d1SDavid du Colombier {
42*3e12c5d1SDavid du Colombier 				/* convert to integer */
43*3e12c5d1SDavid du Colombier 	int	k;
44*3e12c5d1SDavid du Colombier 	for (k = 0; *str >= '0' && *str <= '9'; str++)
45*3e12c5d1SDavid du Colombier 		k = k * 10 + *str - '0';
46*3e12c5d1SDavid du Colombier 	return(k);
47*3e12c5d1SDavid du Colombier }
48*3e12c5d1SDavid du Colombier 
49*3e12c5d1SDavid du Colombier 
50*3e12c5d1SDavid du Colombier int
digit(int x)51*3e12c5d1SDavid du Colombier digit(int x)
52*3e12c5d1SDavid du Colombier {
53*3e12c5d1SDavid du Colombier 	return(x >= '0' && x <= '9');
54*3e12c5d1SDavid du Colombier }
55*3e12c5d1SDavid du Colombier 
56*3e12c5d1SDavid du Colombier 
57*3e12c5d1SDavid du Colombier int
max(int a,int b)58*3e12c5d1SDavid du Colombier max(int a, int b)
59*3e12c5d1SDavid du Colombier {
60*3e12c5d1SDavid du Colombier 	return( a > b ? a : b);
61*3e12c5d1SDavid du Colombier }
62*3e12c5d1SDavid du Colombier 
63*3e12c5d1SDavid du Colombier 
64*3e12c5d1SDavid du Colombier void
tcopy(char * s,char * t)65*3e12c5d1SDavid du Colombier tcopy (char *s, char *t)
66*3e12c5d1SDavid du Colombier {
67*3e12c5d1SDavid du Colombier 	while (*s++ = *t++)
68*3e12c5d1SDavid du Colombier 		;
69*3e12c5d1SDavid du Colombier }
70*3e12c5d1SDavid du Colombier 
71*3e12c5d1SDavid du Colombier 
72