字符串替换函数

// 参数说明:

// in, 源字符串

// out, 存放最后结果的字符串

// outlen,out最大的大小

// src,要替换的字符串

// dst,替换成什么字符串

/********************************************************************

*  Function:   str_replace()

*  Description: 在一个字符串中查找一个子串,并且把所有符合的子串用

另一个替换字符串替换。

*  Calls:        memcpy();

*  Called By:    无

*  Input:       p_source:要查找的母字符串; p_seach要查找的子字符串;

p_repstr:替换的字符串;

*  Output:      p_result:存放结果;

*  Return :      返回替换成功的子串数量;

*  Author:       ChenZhiFa

*  Others:       p_result要足够大的空间存放结果,所以输入参数都要以\0结束;

*  date of completion:

*********************************************************************/

int str_replace(char *p_result,char* p_source,char* p_seach,char *p_repstr)

{

int c = 0;

int repstr_leng = 0;

int searchstr_leng = 0;

char *p1;

char *presult = p_result;

char *psource = p_source;

char *prep = p_repstr;

char *pseach = p_seach;

int nLen = 0;

repstr_leng = strlen(prep);

searchstr_leng = strlen(pseach);

do{

p1 = strstr(psource,p_seach);

if (p1 == 0)

{

strcpy(presult,psource);

return c;

}

c++;  //匹配子串计数加1;

//       printf("p_result:%s\r\n",p_result);

//       printf("p_source:%s\r\n",p_source);

// 拷贝上一个替换点和下一个替换点中间的字符串

nLen = p1 - psource;

memcpy(presult, psource, nLen);

// 拷贝需要替换的字符串

memcpy(presult + nLen,p_repstr,repstr_leng);

psource = p1 + searchstr_leng;

presult = presult + nLen + repstr_leng;

}while(p1);

return c;

}

时间: 2024-08-03 03:44:31

字符串替换函数的相关文章

php中几个字符串替换函数详解

在php中字符替换函数有几个如有:str_replace.substr_replace.preg_replace.preg_split.str_split等函数,下面我来给大家总结介绍介绍. 一.str_replace(find,replace,string,count) 作用:str_replace() 函数使用一个字符串替换字符串中的另一些字符. 参数 描述find 必需.规定要查找的值.replace 必需.规定替换 find 中的值的值.string 必需.规定被搜索的字符串.count

php字符串替换函数str_replace速度比preg_replace快

php里字符串替换的函数,有str_replace().str_ireplace().substr_replace(). preg_replace().strtr()等几个,程序员在写程序的时候,往往会根据自己的习惯以及实际情况选用其中一个或多个.这几个函数虽然都有字符串替换的功能,但它们无论从语法到作用,还是速度和效率上都有所不同,所以并非在任何场合都可以使用它们. str_replace()与preg_replace()的区别 在字符串替换的函数里,str_replace()的使用率是最高的

Java字符串替换函数replace、replaceFirst、replaceAll

一.replace(String old,String new) 功能:将字符串中的所有old子字符串替换成new字符串 示例 String s="Hollow world!"; System.out.println(s); System.out.println(s.replace("o", "#")); /* * 结果:Hollow world! * H#ll#w w#rld! */ 二.replaceAll(String arg0, Stri

C String理解—— 字符串替换函数

1 #include<stdio.h> 2 #include<string.h> 3 #include<stdlib.h> 4 int Replace(char *sSrc, char *sMatchStr, char *sReplaceStr) 5 { 6 int StringLen; 7 char caNewString[100]; 8 char *FindPos = strstr(sSrc, sMatchStr);//strstr(str1,str2) 函数用于判

PHP 14 - 字符串替换函数str_replace-strcmp-similar_text-strtr-统计函数substr_count

str_replace是区分大小写的,如果不区分大小写,那么用str_ireplace.该函数不仅能对字符串进行替换,也可以对数组进行替换. print_r 打印数组. strcasecmp()不区分大小写比较. strnatcmp()按自然数进行字符串比较 strncmp 指定位数进行字符串的比较 similar_text()返回相等的字符的个数 strtr进行字符的替换. 统计函数substr_count

php str_replace()——字符串替换函数

PHP str_replace() mixed str_replace ( mixed $search , mixed $replace , mixed \(subject [, int &\)count ] ) 该函数返回一个字符串或者数组.该字符串或数组是将 subject 中全部的 search 都被 replace 替换之后的结果. 如果没有一些特殊的替换需求(比如正则表达式),你应该使用该函数替换 ereg_replace() 和 preg_replace(). $arr = arra

java 字符串替换函数replaceAll 一次同时替换多个字符串

public static void main(String[] args) throws Exception { String src = "南京市玄武区北京东路徐州市鼓楼区戏马台"; src = src.replaceAll("(?:江苏省|玄武区|鼓楼区)", ""); System.out.println(src); } 支持替换逗号等符号.replaceAll("(?:.|,|/)", " OR "

dede调用数据时,字符串替换函数使用

{dede:sql sql="SELECT typename,typedir,typeimg FROM #@__arctype where topid=30 limit 0,6"} <li><a href="[field:typedir function='str_replace("{cmspath}","",@me)'/]" alt="[field:typename/]" title=&

java字符串替换函数高效实现

1 public static String removeStr(String src, String str) { 2 if (src == null || str == null) return src; 3 int idx = src.indexOf(str); 4 if (idx == -1) return src; 5 int pst = 0; 6 char[] cs = src.toCharArray(); 7 char[] rs = new char[src.length() -