c: string

发布时间 2023-10-16 00:28:08作者: ®Geovin Du Dream Park™

 

/*****************************************************************//**
 * \file   Dustring.c
 * \brief  字符串操作
 * IDE: VSCODE   c11  
 * 
 * 
 * \author geovindu,Geovin Du 涂聚文
 * \date   2023-10-15
***********************************************************************/

#include "include/Dustring.h"
#include<ctype.h>


/**
 * @brief 从左截取字符串
 * 
 * @param dst 要选择的字会串存储的数组(预设长度)
 * @param src 源字符串
 * @param n 取几位
 * @return char* 返回要截取的字符串
 */
char *strleft(char *dst,char *src,int n)
{
    
	char *p=src;
	char *q=dst;
	int len=strlen(src);
    //isupper()
    //islower()

	if(n>len) n=len;
	while(n--) *(q++)=*(p++);
	*(q++)='\0';
	return dst;
}

/**
 * @brief 从右截取字符串
 * 
 * @param dst 要选择的字会串存储的数组(预设长度)
 * @param src 源字符串
 * @param n 取几位
 * @return char* 返回要截取的字符串
 */
char *strright(char *dst,char *src,int n)
{
	char *p=src;
	char *q=dst;
	int len=strlen(src);
	if(n>len) n=len;
	p+=(len-n);
	while(*(q++)=*(p++));
	return dst;
}

/**
 * @brief 截取字符串
 * 
 * @param dst 要选择的字会串存储的数组(预设长度)
 * @param src 源字符串
 * @param start 开始位置
 * @param len 取几位
 * @return char*  返回要截取的字符串
 */
char *strsubstring(char *dst,char *src,int start,int len)
{  
	char *p=dst;  
	char *q=src;  
	int length=strlen(src); 
	if(start>=length||start<0) 
		return NULL;  
	if(len>length) 
		len=length-start; 
	q+=start;
	while(len--)  
	{   
		*(p++)=*(q++); 
	}  
	*(p++)='\0';  
	return dst;
}

  

/*****************************************************************//**
 * \file   Dustring.h
 * \brief  
 * IDE: VSCODE   c11  
 * 
 * int isdigit(int c)   如果。是一个数字,返回true,否则返同 false
int isalpha(int c)  如果e是一个字母,返回true,否则返回 false
int isalnum(int c)  如果 c 是一个字母或数字,返回 truo,否则返同 false
int isxdigit(int c)  如果c是一个十六进制字符,返回 true,否则返回 false
int islower(int c)  如果e是一个小写字母,返回 true,否则返回 false
int isupper(int c)  如果e是一个大写字母,返回true,否则返回 false
int isspace(int c)   如果e是一个空白符,返回 true,否则返回 false 空白符包括,"n,空格,W,V进纸符(),垂直制表符(“v)
int iscntrl(int c)  如果e是一个控制符,返回 true ,否则返回 false
int ispunct(int c)   如果e是一个除空格、数字和字母外的可打印字符,返回 true,否则返回 false
int isprint(int c)  如果c 是一个可打印符 (包括空格),返回 trueu,否则返回 false
int isgraph(int c)   如果c 是除空格之外的可打印字符,返回 true,否则返回 false

 * 
 * \author geovindu,Geovin Du 涂聚文
 * \date   2023-10-15
***********************************************************************/

#ifndef DUSTRING_H
#define DUSTRING_H

#include<string.h>
#include<stdio.h>
#include<stdlib.h>
#include<ctype.h>


/**
 * @brief 从左截取字符串
 * 
 * @param dst 要选择的字会串存储的数组(预设长度)
 * @param src 源字符串
 * @param n 取几位
 * @return char* 返回要截取的字符串
 */
char *strleft(char *dst,char *src,int n);


/**
 * @brief 从右截取字符串
 * 
 * @param dst 要选择的字会串存储的数组(预设长度)
 * @param src 源字符串
 * @param n 取几位
 * @return char* 返回要截取的字符串
 */
char *strright(char *dst,char *src,int n);


/**
 * @brief 截取字符串
 * 
 * @param dst 要选择的字会串存储的数组(预设长度)
 * @param src 源字符串
 * @param start 开始位置
 * @param len 取几位
 * @return char*  返回要截取的字符串
 */
char *strsubstring(char *dst,char *src,int start,int len);


#endif